C#2.0中的程式事務實現

來源:互聯網
上載者:User

 .NET Framework 類庫 
System.Transactions 命名空間 
注意:此命名空間在 .NET Framework 2.0 版中是新增的。
使用 System.Transactions 命名空間包含的類可以編寫自己的事務應用程式和資源管理員。具體地說,可以建立和參與(與一個或多個參與者)本地或分散式交易。
重要事項:
只能在 Windows 2000、Windows XP 和 Windows 2003 平台上使用此命名空間建立應用程式。在 Windows 98 和 Windows ME 平台上建立事務會引發 PlatformNotSupportedException。
System.Transactions 基礎結構通過支援在 SQL Server、ADO.NET、MSMQ 和 Microsoft 分散式交易協調器 (MSDTC) 中啟動的事務,使事務編程在整個平台上變得簡單和高效。它提供基於 Transaction 類的顯式編程模型,還提供使用 TransactionScope 類的隱式編程模型,在這種模型中事務是由基礎結構自動管理的。強烈建議使用更為方便的隱式模型進行開發。若要開始,請參見使用事務範圍實現隱含交易主題。有關編寫事務性應用程式的更多資訊,請參見編寫事務性應用程式。
System.Transactions 也提供了一些可用於實現資源管理員的類型。使用 System.Transactions 基礎結構的本機交易管理員可以有效地提交或復原可變資源或單個持久資源登記。有關實現資源管理員的更多資訊,請參見實現資源管理員。
另一個持久資源管理員向一個事務進行登記時,交易管理員還通過基於磁碟的交易管理員(如 DTC)進行協調,透明地將本地事務升級為分散式交易。System.Transactions 基礎結構提供增強效能的關鍵方式有兩種。
動態升級,即 System.Transactions 基礎結構只在事務實際需要 MSDTC 時才使用 MSDTC。這部分內容在交易管理升級主題中詳細介紹。
可升級登記,如果某個資源是參與事務的唯一實體,則允許該資源(如資料庫)取得事務的所有權。以後,如果需要,System.Transactions 基礎結構仍然可以將交易管理交給 MSDTC。這樣進一步減少了使用 MSDTC 的機會。這部分內容在使用單階段提交和可升級單階段通知進行最佳化主題中詳細介紹。
System.Transactions 定義三個信任層級,用於限制對其公開的資源類型的訪問。具體地說,如果 System.Transactions 程式集已使用 AllowPartiallyTrustedCallers 屬性 (APTCA) 標記,則可由部分受信任的代碼調用。此屬性實質上是移除了 FullTrust 許可權集的隱式 LinkDemand,在其他情況下,LinkDemand 會被自動置於每個類型的每個公用可存取方法上。但是,某些類型和成員還是需要更強的許可權。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.