如何将StyleCop 4.7与Visual Studio 2013集成?

时间:2014-05-13 19:21:45

标签: visual-studio-2013 stylecop

我真的想在我的Visual Studio 2013中使用StyleCop,但不幸的是它不能工作。我已经从official site安装了4.7版本,检查所有选项,包括VS Studio集成和MSBuild集成,遵循精确的说明(下载,安装VS应用程序关闭,然后启动VS)但它只是不会出现在我的Visual Studio 2013中。

StyleCop网站说它应该与VS2013兼容。它不会在工具下显示与StyleCop相关的任何内容,而且它不会显示“运行StyleCop”#39;右键单击我的C#项目时的操作。已经从安装菜单中尝试了修复选项,甚至重新安装了它。避风港没有取得任何进展。

有人可以帮我这个吗?也许以前有过这方面的经验?提前谢谢!

3 个答案:

答案 0 :(得分:36)

打开Visual Studio 从TOOLS打开包管理器控制台> LIBRARY PACKAGE MANAGER菜单

运行以下命令

install-package stylecop.msbuild

上面的命令将下载最新的稳定所需的dll和文件,并将样式cop与您的项目集成。构建您的项目,任何stylecop错误都将显示在警告部分。

如果您在上述菜单中因某些原因未找到包管理器,请参阅此链接以获取有关如何安装http://surajdeshpande.wordpress.com/2013/10/18/how-to-install-a-nuget-package-in-visual-studio/的说明

如果你希望你的构建只有在修复了所有的stylecop错误后才能成功,你需要对项目文件进行一些更改,以设置一个布尔值,不将stylecop错误视为警告。

在记事本中打开项目的.csproj文件,找到文件中的第一个PropertyGroup部分。添加新标记以将StyleCopTreatErrorsAsWarnings标志设置为false。例如:

<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProductVersion>8.0.50727</ProductVersion>
    <SchemaVersion>2.0</SchemaVersion>
    <ProjectGuid>{4B4DB6AA-A021-4F95-92B7-B88B5B360228}</ProjectGuid>
    <OutputType>WinExe</OutputType>
    <AppDesignerFolder>Properties</AppDesignerFolder>
    <RootNamespace>TestProject</RootNamespace>
    <AssemblyName>TestProject</AssemblyName>
    <StyleCopTreatErrorsAsWarnings>false</StyleCopTreatErrorsAsWarnings>
  </PropertyGroup>

上面显示了带有<StyleCopTreatErrorsAsWarnings>false</StyleCopTreatErrorsAsWarnings>的示例项目内容。

只有在修复了所有sylecop错误后,构建才会成功。

答案 1 :(得分:3)

以前的答案似乎在2015年已被弃用..

对于VS社区2013年更新5:

1)安装&#34; JetBrains ReSharper Ultimate 2015.2 [En]&#34;

2)去Resharper-&gt;扩展:

enter image description here

3)从那里安装Resharper.Stylecop

enter image description here

更新:好的,对于ReSharper Ultimate 10.0.2 + StyleBop by JetBrains 4.8 我收到此错误:https://resharper-support.jetbrains.com/hc/en-us/community/posts/206009179-StyleCop-integration-with-ReSharper-10-x-VS2015- 但建议忽略此错误。重启VS后似乎工作

(我也安装了reSP,用于Sharepoint代码分析)

答案 2 :(得分:1)

我已使用以下步骤将stylecops 4.7与Visual Studio 2013(Web)集成。

  1. 为了将StyleCop与项目集成,需要将<Import>添加到.csproj文件中(版本和路径可能不同):
  2. 如果您使用官方安装程序并安装了&#39; MSBuild集成&#39;组件,您的<Import>将如下所示:

    <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> 
    <!-- Your StyleCop <Import> will go here -->
    <Import Project="$(ProgramFiles)\MSBuild\StyleCop\v4.7\StyleCop.targets" />
    

    注意:您需要在解决方案的每个项目中添加上述行。

    1. 从解决方案根文件夹上的C:\ Program Files \ StyleCop 4.7复制项目解决方案文件夹中的Settings.StyleCop,或者添加为解决方案项。

    2. 双击Settings.StyleCop文件以配置规则。您应该能够在项目中使用stylecops。