【发布时间】:2015-07-16 09:33:15
【问题描述】:
当使用 graphDiff 创建记录时,调用 saveChanges() 后新的 id 不会重新填充到实体中。它已在此处登录 github 存储库 - https://github.com/refactorthis/GraphDiff/issues/144 但该存储库似乎不再那么活跃,因此希望这里的某个人对如何使其工作有所了解。
它应该如何工作,但是对于创建,qualification.Id 始终为 0。对于更新,它是正确的 ID。
public int CreateUpdate(Qualification qualification)
{
using (var db = new DataContext())
{
db.UpdateGraph(qualification);
db.SaveChanges();
return qualification.Id;
}
}
我目前的解决方法是不使用图形差异进行创建,但这并不理想。
public int CreateUpdate(Qualification qualification)
{
using (var db = new DataContext())
{
if (qualification.Id == 0)
{
db.Entry(qualification).State = EntityState.Added;
}
else
{
db.UpdateGraph(qualification);
}
db.SaveChanges();
return qualification.Id;
}
}
谢谢
【问题讨论】:
标签: entity-framework graphdiff