我的桌子有两个ID字段(我没有放2个ID,所以不要问我为什么)。一个是主键,另一个是可空的重复字段,它将包含主键本身的值。
public static void UpdateDuplicate_ID(Company updatingCompany)
{
Company tempCompany;
using (var context = new TestLiveDataContext())
{
tempCompany = (from company in context.Companies
where company.Id == updatingCompany.Id
select company).FirstOrDefault();
tempCompany.DuplicateId = updatingCompany.DuplicateId;
context.SubmitChanges();
}
}
看来上面的代码不起作用。我无法使用主键值更新重复的ID。谁能告诉我,我在这里是否遗漏了什么?
答案 0 :(得分:1)
我可以看到,updatingCompany
和tempCompany
似乎是同一记录。
如果是这种情况,如果您稍后更改传入的值并再次保存,则可能会覆盖此方法之外的机会。
请问这个问题,你为什么不改变updatingCompany
中的值,然后在自己的上下文中提交更改,而不是启动新的?
除非我误解了这个问题。