2014-08-28 64 views
0

我使用的Visual Studio 2013年如何排除一些規則了StyleCop在Visual Studio 2013

我用NuGet包請按照下列步驟安裝了StyleCop: https://www.nuget.org/packages/StyleCop.MSBuild/

以前在使用Visual Studio 2010的我,我通常把我的自定義規則設置爲Setting.StyleCop文件到我的解決方案或項目。

我應該如何實現我在VS 2013中設置的自定義規則?

+0

複製它只是做一樣的事情,你總是這樣做?我不明白這有多大的不同。什麼讓你感到害怕? – jessehouwing 2014-08-28 12:10:22

+0

不同的是,對於VS 2013,Stylecop不支持在安裝過程中自動集成。這就是一切開始的地方。 – 2014-09-02 06:32:10

+0

你應該仍然可以添加'setting.Stylecop'文件。只需選擇新的XML文件作爲模板併爲其命名。 – jessehouwing 2014-09-02 06:37:05

回答

2

Settings.StyleCop仍然像以前那樣工作。


StyleCop.MsBuild包執行幾個動作:

商店在包目錄中的StyleCop.exe的情況下,這使得它的機器之間移植,構建服務器等。也就是說\packages\StyleCop.MSBuild.4.7.49.1\tools這是一個很值得與安裝它相同,但它不在程序文件中。

2.使更改的csproj,即:

<Import Project="..\..\packages\StyleCop.MSBuild.4.7.49.1\build\StyleCop.MSBuild.Targets" Condition="Exists('..\..\packages\StyleCop.MSBuild.4.7.49.1\build\StyleCop.MSBuild.Targets')" /> 
    <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> 
    <PropertyGroup> 
     <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> 
    </PropertyGroup> 
    <Error Condition="!Exists('..\..\packages\StyleCop.MSBuild.4.7.49.1\build\StyleCop.MSBuild.Targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\StyleCop.MSBuild.4.7.49.1\build\StyleCop.MSBuild.Targets'))" /> 
    </Target> 

這一切基本上沒有在目標文件點,使得它運行了StyleCop,並增加了一些需要在封裝之前在那裏建造。

你需要做的使用StyleCop.Settings
將其複製到您的解決方案的根目錄或項目文件,那麼它應該得到拿起像往常一樣。最簡單的方法就是從\packages\StyleCop.MSBuild.4.7.49.1\tools