如果需要为1-1关系添加新行,是否需要指定添加或附加?如果需要,我该怎么办呢?
//one tblContent to one tblContentData
//updating the tblContentData corresponding to a particular id in tblContent
int id = 12345;
tblContent entity = db.tblContents.Where(con => con.id == id)
.FirstOrDefault();
if (entity == null)
throw new Exception("id was bad");
if (entity.tblContentData == null)
entity.tblContentData = new tblContentData();
//proceed with updating the foreign keyed table
答案 0 :(得分:1)
Add
适用于新行。 Add
不适合更新。在您发布的代码中,应保留实体和上下文之间的关系,因此您需要调用:
db.SaveChanges();
保留所有更新。
如果关系中断,您可以使用Entry
更新项目:
db.Entry(entity).State = EntityState.Modified;
db.SaveChanges();