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的值是多少?在我的例子中,它不是空的,可能是,问题的根源在这里。