首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

Enterprise Library 2.0 - Exception Handling Application Block

     編輯:關於ASP.NET

Exception Handling Application Block 為企業級應用程式各層級提供一致的例外處理方式,特點如下:

  1. 為架構每一層提供例外處理,不限於服務層介面
  2. 提供通用處理方式:記錄例外、以自訂訊息取代系統例外等
  3. 可自訂處理規則,且無需修改程式碼即可調整規則
  4. 支援開發者建立自訂例外處理器
  5. 統一呼叫方式,可用於應用程式任何位置

常見例外處理策略

  1. 包裝
  2. 替換
  3. 記錄

傳統寫法 vs 使用 Enterprise Library

傳統寫法(散落各處,難以維護)

DataSet customersDataSet;
try
{
    customersDataSet = RunQuery("GetAllCustomers");
}
catch (Exception ex)
{
    string formattedInfo = FormatException(ex);
    Logging.Log(formattedInfo);
    throw new DataAccessException("Database access failure for query GetAllCustomers", ex);
}

使用 Exception Handling Application Block(集中配置,彈性調整)

DataSet customersDataSet;
try
{
    customersDataSet = RunQuery("GetAllCustomers");
}
catch (Exception ex)
{
    bool rethrow = ExceptionPolicy.HandleException(ex, "Data Access Policy");
    if (rethrow)
        throw;
}

只需修改組態檔即可改變整個應用程式的例外處理行為,大幅降低維護成本。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved