当尝试使用selfTracking时,我收到客户端错误

问题描述 投票:0回答:1

我正在实体框架中使用SelfTracking。

问题是,当我保存数据时,一切正常,但是当我第二次保存时,它想添加新对象,但是我只想更新旧对象,或者如果未修改则不做任何事情。

我将在下面进行描述:

我有用户实体。我先创建它,然后再创建上下文,然后将其保存并销毁Context,但不会破坏用户。

可以,用户保存在数据库中。然后,我调用相同的方法。创建新的上下文,保存,并且存在重复的键冲突(它不知道它必须更新用户,但尝试插入它)。

Context.User.ApllyChanges(MyUser);
Context.SaveChanges();

我尝试了不同的变体,每次都出现相同的错误。我在做什么错?

感谢您的帮助。

当我单击保存时,将创建新的上下文,但是我拥有与我相同的EntityObject。然后它想添加新对象

c# .net entity-framework-4
1个回答
1
投票

我曾与POCO合作(不是自我跟踪),但我相信它也适用。

事实是,您必须知道它是New还是and Update,然后将对象添加到上下文并将其状态更改为modified。如果您将其保留为已添加的EF,则会尝试将其插入数据库。

© www.soinside.com 2019 - 2024. All rights reserved.