簡體   English   中英

具有相同上下文的TransactionScope

[英]TransactionScope with same context

我可以為事務編寫這樣的EntityFramework代碼嗎?

using(var trans = new TransactionScope())
{
    using(var context1 = new MyDbContext())
    {
        context1.AddEntity(...);
        context1.SaveChanges();
    }

    using(var context2 = new MyDbContext())
    {
        context2.UpdateEntity(...);
        context2.SaveChanges();
    }

    trans.Complete();
}

我要實現的是將兩個操作作為一個單元放在上面(這只是一個演示,在實際情況下,這兩個操作由不同的服務分開,因此它們無法重用上下文),其中任何失敗都會回滾。

以上代碼夠嗎?

正如您編寫示例一樣, 是的 ,它將起作用。

在您提到的問題中

在實際情況下,這兩個服務是分開的,所以

這取決於您所指的服務類型。 如果您指的是WCF服務,則還需要正確配置WCF服務。 有關更多信息,請參見此處和/或此處

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM