在c#中为更新设置新的实体对象,覆盖旧的对象

本文关键字:对象 实体 覆盖 更新 设置 | 更新日期: 2023-09-27 18:16:20

我是Linq和c#的新手,有一个问题一直困扰着我。

我有一些映射到Linq实体的XML。我要做的是加载数据库中的原始记录,然后根据XML实体对象更新该记录。

例子
Car objXml = getXml();
var dc = new carsdatacontext();
var curr = dc.car.firstordefault(c => c.id == "22");
objXml.id = 22;
dc.car = objXml;
dc.submitchanges();

基本上,我只是想用我的XML对象中的数据覆盖我的DB中的所有数据,但我不断得到如下所示的错误。

我如何用新对象更新DB,我必须复制它而不是设置它吗?

只有声明了版本成员或没有更新检查策略的实体才能作为未原始状态的修改附加。

在c#中为更新设置新的实体对象,覆盖旧的对象

我希望这个例子能帮助你理解如何更新一行。

MSDN示例