我有带序列和触发器的表,因此在将其插入数据库时会创建新的id。
如何在调用SaveChanges()之前获取新的对象ID?
我需要这个id用于新对象和其他对象之间的链接。
我想在调用SaveChanges之前这样做,因为我想要选择回滚。
答案 0 :(得分:6)
如果不致电SaveChanges()
,你就无法得到它。想一想。 ID来自数据库。 SaveChanges()
是导致与DB通信的第一件事。
如果要撤消,您有以下几种选择:
TransactionScope
进行“真实”数据库事务。DeleteObject
)而不是回滚。