我认为你需要将它们两个提交到一起,以便它们在同一个事务中。那么不需要编写回滚代码,因为如果细节失败,主服务器不会被插入。 试试这个:
master objmaster= new master();
objmaster.id =count;
objmaster.name= name1;
..
objEntities.AddObject("master", objmaster);
// == removed save changes call here ==
detail objDetail = new detail()
// == no need to reselect master from the database, you already have it
// == so just assign it, and that will take care of the references/foreign-key
objDetail.master = objMaster; // Suppose I get any (format, null pointer exception here)
objDetail.folow = sfields[0]; //In case of exception this below code will not be excecuted
objEntities.AddObject("detail", objDetail);
// == save at the end ==
objEntities.SaveChanges();
没有数据插入子表,当我准备从主表中删除: – 2010-10-01 13:58:23
它不给予任何验证错误,这是给不能删除其中的外键关系的错误存在。 – 2010-10-01 13:59:56
你打电话给一个孩子和家长的提交变更,或者两者都被分开保存到数据库 – Tassadaque 2010-10-01 14:11:11