0

如果需要为 1-1 关系添加新行,是否需要指定 Add 或 Attach?如果需要,我该怎么做?

//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
4

1 回答 1

1

Add对新行有好处。 Add不利于更新。在您发布的代码中,应保留实体和上下文之间的关系,因此您需要调用:

db.SaveChanges();

保留任何更新。

如果关系破裂,您可以使用以下内容更新项目Entry

   db.Entry(entity).State = EntityState.Modified;
   db.SaveChanges();   
于 2013-05-14T18:00:55.757 回答