Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Entity framework 实体框架在保存期间将外键设置为null_Entity Framework_Null_Save - Fatal编程技术网

Entity framework 实体框架在保存期间将外键设置为null

Entity framework 实体框架在保存期间将外键设置为null,entity-framework,null,save,Entity Framework,Null,Save,我有这样的工作流程: using dataContext { load entity int? previousFr = entity.FrSomething entity.FrSomething = null entity.FrSomething = previousFr save entity } 在保存entity.fR期间,某些内容将变为null,并将null值保存到数据库中 这是dataContext.SaveCha

我有这样的工作流程:

using dataContext
{
  load entity
  int? previousFr = entity.FrSomething
  entity.FrSomething = null               
  entity.FrSomething = previousFr         
  save entity
}
在保存entity.fR期间,某些内容将变为null,并将null值保存到数据库中

这是dataContext.SaveChanges()和FrSomething属性设置程序之间的调用堆栈


UPD:它是实体框架4,自跟踪模板。我有实体产品和带有产品类别的组合框。我加载产品进行编辑,并列出要填充的类别组合。产品最初指定了某些类别,并在EF修复期间设置了相应的导航属性。然后我在组合框中选择none类别(FrCategory=null),然后选择产品最初拥有的前一个类别。如果在选择“无”类别后,我选择了“其他”类别,则不复制问题。如果我用Product.category属性而不是Product.FrCategory更改类别,则问题也不会复制

任何帮助都将不胜感激。
谢谢。

我不确定这是否有帮助,但我不能重复这个问题。您可能希望共享您的模型和映射。指定您使用的EF版本。它是实体框架4它是实体框架4。我有实体产品和带有产品类别的组合框。我加载产品进行编辑,并列出要填充的类别组合。产品最初指定了某些类别,并在EF修复期间设置了相应的导航属性。然后我在组合框中选择none类别(FrCategory=null),然后选择产品最初拥有的前一个类别。如果在选择“无”类别后,我选择了“其他”类别,则不复制问题。如果我用Product.category属性而不是Product.FrCategory更改类别,则问题也不会被复制。int?previous=job.MapId;job.MapId=null;job.MapId=上一个_unitOfWork.Save();这对我有用。对应的导航属性job.Map的值是多少?在我的例子中,它不是空的,可能是,问题的根源在这里。