检查实体框架中的插入或更新是否成功

entity-framework savechanges

在ADO.NET中,ExecuteNonQuery()“对于UPDATE,INSERT和DELETE语句,返回值是受命令影响的行数”( http://msdn.microsoft.com/en-us/library/system。 data.sqlclient.sqlcommand.executenonquery.aspx

在EF v1中,context.SaveChanges()方法返回“调用SaveChanges时处于已添加,已修改或已删除状态的对象数”。 ( http://msdn.microsoft.com/en-us/library/bb739065.aspx

请告诉我,当多个实体(或单个实体)被添加或更新到context和context.SaveChanges()方法时,如何检查实际的INSERT或UPDATE是否成功。

如果INSERT(s)或UPDATE(s)成功没有异常,我们可以假设吗?

谢谢

一般承认的答案

是的,如果没有异常,您可以认为语句已成功执行。


热门答案

也许这不是问题的直接答案,但可能有所帮助。默认情况下,调用SaveChanges方法时,所有命令都封装在一个DbTransaction中( Julia Lerman,编程实体框架 )。因此,或者所有命令都将成功执行,或者两者都不成功。这是了解插入,更新或删除是否成功的一种方法。



许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因