1. 程式人生 > >C# 程式碼規範和質量檢查工具 StyleCop.Analyzers

C# 程式碼規範和質量檢查工具 StyleCop.Analyzers

簡介

原來一直用 ReSharper 來進行程式碼質量檢查,不過畢竟是收費的,所以想找個免費的可以推廣給公司的同事也一起用。搜尋了一下,找到了StyleCop,但是我在 VS 2015裡安裝 StyleCop 或者通過 Nuget 包安裝 StyleCop.MSBuild,雖然編譯以後能把 warning 顯示在 Error List 中,但是無法通過 專案---右鍵 配置 StyleCop 的規則,最終在找到了一個 StyleCopAnalyzers 也算是 StyleCop 的新版本吧。

主要使用了 Visual Studio 2015's Roslyn 分析工具,帶來了以下的好處:

  • 可以支援 C# 6
  • 使用 Roslyn 解析器,減少了自定義解析器的效能消耗
  • 當你寫程式碼的時候解析器就會執行,當你編譯的時候也會執行(不需要再設定 msbuild 任務或者安裝任何 vs 外掛)

安裝

安裝的話比較簡單,在專案裡管理 NuGet 包,輸入 StyleCop.Analyzers 然後安裝就可以了

安裝完成就直接可以看到效果了,StyleCop.Analyzers 會像 ReSharper 那樣在你寫程式碼的時候就提示錯誤,而不用編譯以後才發現錯誤了。

不過編譯以後還是會把所有的錯誤提示顯示出來

配置自定義規則

在上面的圖片裡,可以看到我的專案一共有32個 StyleCop 警告,下面我們就把 SA1652 警告去除。

找到引用裡得 Analyzer,右鍵點選 Open Active Rule Set,就可以開啟規則表

然後找到 StyleCop.Analyzers 的規則 SA1652,取消勾選,然後儲存。

最終會在專案裡生成一個 .ruleset 字尾的檔案就是我們的自定義規則。

編譯以後檢視效果,就會發現前面提示的 SA1652 的警告已經沒有了。