2011-05-16 9 views
0

我有一個調用Membership.UpdateUser()以及一些角色方法以及一些自定義插入,刪除我自己的方法。在交易中可以做到這一切嗎?我沒有看到任何方式將交易與會員或角色提供者相關聯。爲了澄清,我希望所有的操作都在同一個交易中進行。如何在事務內部調用Membership和Roles方法?

回答

2

將您的一個TransactionScope範圍內更新:

using (TransactionScope trans = new TransactionScope([option])) 
{ 
    Membership.Provider.UpdateUser(...); 
    Membership.Provider.UpdateUser(...); 
    trans.Complete(); 
} 
+0

多麼喜悅地發現這一點。因此,如果像Membership.CreateUser這樣的方法使用他們自己的事務,那麼框架足夠聰明,可以使用塊中引入的新事務?而且它似乎沒有煩人的嘗試,抓住,提交,回滾,等等,等等,等等是必需的。 – 2011-05-16 18:19:24

+0

任何使用SQLDataProvider的東西都可以用這種方式包裝在TransactionScope中。請參閱http://msdn.microsoft.com/zh-CN/library/system.transactions.transactionscope.aspx關於如何確定它是否使用新事務的評論。 – Keith 2011-05-16 18:29:45

相關問題