(譯)Windsor入門教程---第五部分 添加日誌功能

來源:互聯網
上載者:User

標籤:c   style   blog   a   http   get   

介紹

    現在我們已經有了基礎的架構了,是時候新增內容了,那麼我們首先應該考慮的就是在應用程式中添加日誌功能。我們會使用Windsor來配置,在這一部分,你將學習Windsor之外的其他功能。

Logging Facility

    在上一部分說過,Windsor有很多內建的可選的功能組件,他們擴充了Windsor的即用性。在這一部分,我們將在程式中添加日誌功能。

    Logging Facility提供了一些常用的日誌架構比如Log4net、Nlog,以及mvc內建的日誌架構Trace。Logging Facility將提供一個抽象類別,這樣當你的程式切換其他日誌架構的時候不會很麻煩。更重要的是,Facility根據需要提供Ilogger執行個體,不需要任何靜態依賴。

我們需要添加必須的包,啟動Nuget‘s Package Manager Console並鍵入:

Install-Package Castle.Windsor-log4net

這將會把依賴想都添加到程式中:

Installer

    接下來添加程式集的引用,建立一個Installer來添加日誌功能到程式中:

注意API的調用模式,泛型參數指定我們想要添加的類型,然後用lambda運算式制定類型為log4net.

    我們沒有指定log4net的設定檔,預設的配置是在log4net.Config檔案,這是log4net配置的核心檔案。我們在程式中添加一個設定檔,包含標準的log4net配置資訊:

然後修改Installer類:

What we just did?

    你可能會問:這怎麼使用?你要做的就是調用Castle.Core.Logging.Ilogger命名空間下的Ilogger介面(常用的做法是使用屬性,而不是建構函式)。容器將提供配置並且準備使用Ilogger執行個體。為了說明我們在AccountController中添加了一個警告日誌,當使用者登入密碼錯誤時記錄日誌:

如果log4net的配置是正確的,那麼現在登入錯誤的日誌將被記錄。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.