C# 在EF工作中加载CSV时,将不可为null的字段默认为默认类型值
我正在使用CSV加载程序将模拟数据加载到工作中。一位同事签入了对我们的一个数据库表(一个新的不可为null的列)的更改,但他的门控签入失败,因为在我们希望值为0时,工作尝试分配null值 除了返回并更改CSV文件中的每一行之外,我们是否有办法将这些不可为空的列默认填充为其类型的默认值C# 在EF工作中加载CSV时,将不可为null的字段默认为默认类型值,c#,entity-framework,csv,effort,C#,Entity Framework,Csv,Effort,我正在使用CSV加载程序将模拟数据加载到工作中。一位同事签入了对我们的一个数据库表(一个新的不可为null的列)的更改,但他的门控签入失败,因为在我们希望值为0时,工作尝试分配null值 除了返回并更改CSV文件中的每一行之外,我们是否有办法将这些不可为空的列默认填充为其类型的默认值 Exception message:Effort.Exceptions.EffortException : An unhandled exception occurred while trying to assig
Exception message:Effort.Exceptions.EffortException : An unhandled exception occurred while trying to assign value '[null]' to Property 'TaskQueueId' of type 'System.Int32' during entity initialization for table
如本例所示:
可以在对对象进行材质设置时设置列值。例如,如果我们必须在产品
对象上设置一些属性:
var products = ctx.Products.ToList();
foreach(var p in products)
{
p.UnitPrice *=1.2m;
}
您使用的是哪种CSV加载程序?它不是从CSV的行返回行集合或物化对象吗?如果是这样,则可以在这些对象/行上将列设置为0。然后将Effort.DataLoaders.CsvDataLoader传递到ObjectContextFactory。
var products = ctx.Products.ToList();
foreach(var p in products)
{
p.UnitPrice *=1.2m;
}