首页 > 解决方案 > 在实体框架中插入数据,需要使用 State.Unchanged

问题描述

我在这里的第一个问题,所以请多多包涵:)

我正在构建一个 ASP.NET Core 2.0 Web 应用程序并尝试使用实体框架并不断陷入我需要明确告诉框架我不想插入现有对象的情况。具体来说,我有一个函数,它接收一个我想指定为新案例作者的 Person 对象。该人存在于数据库中,该人所属的组织也确实存在。如果我没有前两行,则 SaveChangesAsync 函数在唯一约束上失败(假设 EF 试图将行插入到 Person 和 Organization 表中)。我必须一直跟踪这真的是真的吗?或者我做错了什么?很感谢任何形式的帮助!谢谢。

_context.Entry(author).State = EntityState.Unchanged;
_context.Entry(author.Org).State = EntityState.Unchanged;       

var c = new Case
{
   IsDraft = true,
   Organization = author.Org,
   Author = author
};

标签: asp.net-coreentity-framework-core

解决方案


推荐阅读