错误:因为相同类型的其他实体已具有相同的主键值。在使用 "Attach" 方法或者将实体的状态设置为 "Unchanged" 或 "Modified" 解决方法

简介: 在更新一个实体类的时候可能会有预先有一次查询或者其它操作,我们这样用目的是为了与提交的数据做一个比较之类的东西,如果先查询再对此类进行SaveChanges就会出错。 我们只要用AsNoTracking()让它停止追踪就行了。

在更新一个实体类的时候可能会有预先有一次查询或者其它操作,我们这样用目的是为了与提交的数据做一个比较之类的东西,如果先查询再对此类进行SaveChanges就会出错。

我们只要用AsNoTracking()让它停止追踪就行了。如下:

var entity = db.您的类.AsNoTracking().FirstOrDefault();

返回查询结果系统将不在追踪,不影响下面的操作。

学习交流群:364976091
相关文章
|
Go
链接服务器 "(null)" 的 OLE DB 访问接口 "SQLNCLI11" 指示该对象没有列,或当前用户没有访问该对象的权限。
原文:链接服务器 "(null)" 的 OLE DB 访问接口 "SQLNCLI11" 指示该对象没有列,或当前用户没有访问该对象的权限。   SELECT * FROM OPENROWSET('SQLOLEDB', 'server=.
6342 0
|
存储 缓存 KVM
KVM创建存储池中报错:确认输入时未捕获的错误:constructor returned null解决
KVM创建存储池中报错:确认输入时未捕获的错误:constructor returned null解决
227 0
SwiftUI—如何通过AnyView返回任意类型的视图
SwiftUI—如何通过AnyView返回任意类型的视图
269 0
SwiftUI—如何通过AnyView返回任意类型的视图
|
Windows 开发工具
UWP项目生成错误: 未能使用“CompileXaml”任务的输入参数初始化该任务。“CompileXaml”任务不支持“PlatformXmlDir”参数。请确认该参数存在于此任务中,并且是可设置的公共实例属性。
项目属性: 目标版本 16299  最低版本 14393   解决方法:目标版本 15063 最低版本 14393   The issue is a bug in the Windows SDK that is causing an incompatible MSBuild tasks as...
1490 0