PostSharp - Contract Inheritance

PostSharp 的 Contract 跟 Conde Contract 一樣,具備可被繼承的特性。凡是套用在 abstract、virtual、或 interface 方法上的 Contract,其子類別都會繼承到,在開發上十分的好用。 ...

February 8, 2015 · 1 min · 292 words · Larry Nung

PostSharp - Custom Contract

PostSharp 內建的 Contracts 能支援我們做些常見的檢查,若是內建的無法滿足,我們也可以自行擴建 Contract。 ...

February 6, 2015 · 2 min · 581 words · Larry Nung

PostSharp - Contracts

以往我們在寫函式的時候,若要作參數的檢查,我們可能會自行去檢查參數是否 Null 或是 Empty,若是 Null 或 Empty 則丟出 ArgumentNullException。這樣的參數動作會混在程式邏輯的前面,PostSharp 的 Contract 功能就有點像是 Code Contract 一樣,能讓我們做前置條件的檢查,並將檢查抽離程式核心。 ...

February 4, 2015 · 2 min · 718 words · Larry Nung

PostSharp - Changing the Logging Back-End

前面介紹 PostSharp 時,筆者多半都是透過精靈介面將之套用至專案之中,在加 Log 時有一步驟是設定 Log 機制背後要用的服務,這個在精靈介面設定完後,若有修改的必要,我們可以參閱下表: ...

February 4, 2015 · 1 min · 162 words · Larry Nung

PostSharp - Tracing Parameter Values Upon Exception

要使用 PostSharp 為程式加入 Exception 的 Log 處理,在安裝完 PostSharp 擴充套件後,我們可以在類別上直接按下右鍵,在彈出的滑鼠右鍵快顯選單中,選取 Add logging... 選單選項。 ...

February 4, 2015 · 1 min · 475 words · Larry Nung

PostSharp - Customizing Logging

如果預設的 Log 設定不敷使用,像是 Log 的層級應該是 Error 而不是 Warning,或是 Log 應該含更多的資訊,這邊PostSharp 也支援我們有限幅度的客製。我們可以在類別上直接按下右鍵,在彈出的滑鼠右鍵快顯選單中,選取 Add logging… 選單選項。 ...

February 3, 2015 · 2 min · 570 words · Larry Nung

PostSharp - Adding Detailed Tracing to a Code Base

要使用 PostSharp 為程式加入些簡易的 Log 資訊,在安裝完 PostSharp 擴充套件後,我們可以在類別上直接按下右鍵,在彈出的滑鼠右鍵快顯選單中,選取 Add logging... 選單選項。 ...

February 2, 2015 · 2 min · 542 words · Larry Nung

PostSharp - Automatically Implementing INotifyPropertyChanged

要用 PostSharp 自動實作 INotifyPropertyChanged,在安裝完 PostSharp 擴充套件後,我們可以在類別上直接按下右鍵,在彈出的滑鼠右鍵快顯選單中,選取 Implement INotifyPropertyChanged 選單選項。 ...

February 1, 2015 · 2 min · 616 words · Larry Nung