我想获取下一个身份ID,然后将其记录在某处。只有在此之后,我才要调用SubmitChanges()。
将DataContextin 包装在数据库事务中,并调用SubmitChanges将更改写入该事务内的数据库。这样,您可以获取自动生成的ID,同时又可以保持操作的事务性:
using (var con = new SqlConnection(conStr))
{
con.Open();
using (var tran = con.BeginTransaction())
{
using (var db = new YourDataContext(con))
{
// Setting the transaction is needed in .NET 3.5.
// It's a bug in L2S and was fixed in .NET 4.0.
db.Transaction = tran;
var entity = new MyEntity();
db.MyEntities.InsertOnSubmit(entity);
db.SubmitChanges();
var id = entity.Id;
// Do something useful with this id
}
tran.Commit();
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3274 次 |
| 最近记录: |