版權所有(c) 2007 Dorian Deng。署名 共享 非商用。
轉載請註明出處:http://www.cnblogs.com/doriandeng/archive/2007/09/29/911139.html
這個 Enterprise Library 發行版包括二個新的應用程序塊( 驗證應用程序塊和策略注入應用程序塊)、二個嚮導包、以及與 Visual Studio 集成的配置編輯器。還有數據訪問應用程序塊和日誌應用程序塊功能的增加。下面各節將討論這些和其他在這個發行中中的變化。
影響所有應用程序塊的變化
影響所有應用程序塊的 Enterprise Library 的變化如下:
-
Enterprise Library 的這個版本包括了所有源碼的預編譯強命名程序集。更多信息,請參閱使用 Enterprise Library 二進制。
-
現在,一個獨立的 Microsoft Windows 安裝包(.msi 文件)爲 Enterprise Library 提供源碼。這個 windows 安裝包由主 .msi 文件安裝。源碼 .msi 文件允許你釋放源碼的一個副本並放置在一個文件目錄下,這個目錄正是你多次想指定的。
-
用於 Enterprise Library 的部分信任補丁 2554。2006年1月已合併到 Enterprise Library 核心。
-
用於 Enterprise Library 的管理性擴展。2006年1月已合併到 Enterprise Library 核心。
-
現在可以使用 Visual Studio 創建和修改配置文件。這個配置工具叫做配置編輯器。配置編輯器與單獨運行的配置控制檯具有同樣的功能,但是它使用 Visual Studio 屬性窗口來顯示應用程序塊的屬性,用錯誤列表來顯示配置錯誤。整體上講,配置編輯器和獨立配置控制檯都是配置工具。更多信息可以查看 Enterprise Library 配置工具。下面描述一些配置工具的活動將幫助你使用配置工具:
-
可以使用配置工具創建、修改標準和的.NET Framework <appSettings>節。更多信息,請參閱配置<appSettings>。
-
可以用配置工具調整應用程序塊的配置爲特定的運行時環境。更多信息,請參閱定製運行時設置。
-
可以使用配置工具加密和解密配置節中的數據。更多信息,請參閱加密配置節數據。
-
單獨的應用程序塊的改變
單獨的應用程序塊的重要改變交在以下節中描述。它們討論了數據訪問、異常處理和日誌應用程序塊的改變。
數據訪問應用程序塊
2007年5月發行的數據訪問應用程序塊包括下列改進:
-
包括一個新類
SqlCeDatabase
,它允許你使用 SQL Server CE。這是一個 SQL Server 輕量級的、內部過程(in-process)的版本,包含了相關數據庫的基本功能。 -
包括一個
Database.UpdateDatabase
方法的重載,它帶有updateBatchSize
參數。設置updateBatchSize
參數爲正整數將導致DataAdapter
對象將以指定大小的塊發送修改到數據庫。這減少了數據庫回發的次數。
更多信息,請參閱數據訪問應用程序塊文檔。
異常處理應用程序塊
2007年5月發行的異常處理應用程序塊包括下列改進:
-
異常處理應用程序塊可用於在 Windows Communication Foundation (WCF) 應用程序的服務接口上實現異常屏蔽。
ExceptionShieldingAttribute
可以被定義一個服務實現類上,以調用部署在服務邊界上的異常。FaultContractExceptionHandler
可用於映射異常爲失敗契約以防止返回的敏感信息給了不可信的調用者。 -
ExceptionPolicy.HandleException
方法有了一個新的重載,它調用異常處理策略,在一個輸出參數中返回結果異常來代替拋出結果異常。 -
Wrap 和 Replace 異常處理程序包含一個附加的配置屬性,它允許你指定在外部資源中的異常信息而不是直接在配置文件中的。此功能可用於異常信息的本地化。
更多信息,請參閱異常處理應用程序塊文檔。
日誌應用程序塊
2007年5月發行的異常處理應用程序塊包括下列改進:
-
現在包括一個 Rolling Flat File Trace Listener 。這個跟蹤監聽器在當前日誌文件超出預定義的時間或大小時創建一個新的日誌文件。
-
現在包括一個 WCF 適配器,允許你記錄 WCF 消息。
-
現在包括了一個
TimeStampToken
類的改進版本。日誌應用程序塊的早期版本只允許時間間隔記錄爲協道界時(UTC)。在這個版本中,時間間隔令牌當前支持一個local:前綴,以指出時間間隔以本地時間顯示。更多信息,請參閱跟蹤監聽器屬性。 -
包括一個
ReflectedPropertyToken
類。日誌應用程序塊的這個發行支持一個新的格式化令牌,允許記錄在定製類上的定製屬性,這個類派生自LogEntry
類,或者是對它的修改。更多信息,請參閱擴展和修改日誌應用程序塊。
更多信息,請參閱日誌應用程序塊文檔。
Enterprise Library 的添加
Enterprise Library 3.1 包括二個新的應用程序塊,二個嚮導包,和集成到 Visual Studio 中的配置編輯器。下面將對它們進行描述:
驗證應用程序塊
驗證應用程序塊允許開發人員生成用於他們的應用程序的驗證規則。它提供了下列好處:
-
它提供一個爲業務對象定義驗證規則的通用方法,以允許它們在應用程序中跨各層中使用。
-
它提供了一個通用驗證規則類型集,以及讓開發人員容易的定義自己的規則類型的能力。
-
提供了使它易於集成驗證應用程序塊到 ASP.NET、Windows 窗體和 WCF 中的技術適配器。
更多信息,請參閱驗證應用程序塊文檔。
策略注入應用程序塊
策略注入應用程序塊允許開發人員指定在一個策略集條目中的對象的橫切( corsscutting )行爲。橫切關係是普通的跨越多個對象的必要任務、特徵或處理。例如日誌、授權、驗證和度量。一個策略是一系列處理程序的組合,處理程序在客戶代碼調用類的方法,以及帶有基於屬性的異常策略時執行,一系列的配置方法選擇類和類成員(方法和屬性)爲應用程序塊加上處理程序。策略注入應用程序塊的目的是分離核心和橫切關係,並最少化與實現普通特性關聯的潛在問題。
策略注入應用程序塊提供了一個 ready-built 解決方案,它易於在新的或已存在的應用程序中實現,特別是在已利用 Enterprise Library 的應用中。它與這些應用程序塊的預構建處理程序一起加快在使用 Enterprise Library 時的開發,同時幫助管理橫切關係。開發人員也可以創建自己的處理程序和策略,以實現幾乎任何所需要的用於它們的對象的方法和屬性的攔截處理。
更多信息,請參閱策略注入介紹。
強命名嚮導包
Enterprise Library 的這個發行包括了一個新的強命名嚮導包,它與Visual Studio 進行了集成。它自動化了項目的強命名集處理,也可以修改任何[InternalsVisibleTo] 屬性以包含一個公開鑰匙。
更多信息,請參閱強命名 Enerprise Library 程序集。
應用程序塊軟件工廠
應用程序塊軟件工廠提供的自動化的、寫入的嚮導,這個嚮導簡化了構建定製的應用程序塊和應用程序塊提供程序類的過程。應用程序塊軟件工廠包括不同任務的嚮導自動方法。如:
-
創建一個新的應用程序塊
-
創建一個新的提供程序庫
-
創建一個用於 Enterprise Library 應用程序塊的類型化或無類型的提供程序
-
創建一個新的類型化的或無類型的提供程序(通用的)
-
轉換一個無類型提供程序爲一個類型化的
-
創建一個新的提供程序工廠和基類
-
創建一個新的設計時提供提供程序基節點
-
創建一個提供程序設計時節點
更多信息,請參閱應用程序塊軟件工廠文檔。