如何在禁用StyleCop代码分析的情况下创建Visual Studio构建配置?

时间:2013-11-30 16:34:38

标签: visual-studio-2012 stylecop

问题

我已经安装了StyleCop,现在整个源代码都有StyleCop波浪线。

现在,我希望能够暂时启用和禁用StyleCop的分析。

我本来期望一个复选框说“禁用StyleCop”,相反,互联网告诉我,我必须创建一个名为“Debug without StyleCop”的新Visual Studio构建配置,打开项目* .csproj文件,并做各种各样的那里讨厌的东西。

有人可以提供一步一步的说明吗?

到目前为止我找到了

我先尝试做作业,发现这个Stackoverflow问题Visual Studio: temporarily disable StyleCop。但是answer没有为我提供足够的信息来解决问题 - 或者我在尝试时只是犯了一个错误,因为我从来没有触及* .csproj文件而且不知道我是什么在那里。

我尝试了什么

  1. 创建新的Visual Studio构建配置
  2. enter image description here
  3. enter image description here
  4. 在Solution Explorer中,选择我的项目MyProject.csproj并单击“Unload project”
  5. 在Solution Explorer中,选择我的项目MyProject.csproj并单击“Edit MyProject.csproj”
  6. 按照上面mentioned answer
  7. 的建议进行更改
  8. enter image description here
  9. 在Solution Explorer中,选择我的项目MyProject.csproj并单击“Reload Project”
  10. 选择构建配置“Debug without StyleCop”
  11. 使用F6重建
  12. StyleCop波浪线仍在那里
  13. 重新启动Visual Studio
  14. StyleCop波浪线仍在那里
  15. 我哪里出错了?

    版本

    • Visual Studio 2012 Professional
    • StyleCop 4.7.47.0(与ReSharper集成)
    • ReSharper 7.1

1 个答案:

答案 0 :(得分:2)

Resharper的StyleCop插件正在创建你的波浪线,而不是MsBuild的StyleCop任务。据我所知,StyleCop插件不会检查您的项目文件设置,但完全由Setting.StyleCop文件加上ResRper设置完全触发,ResRper设置在StyleCop和Resharper的代码格式化部分之间相同。 / p>

因为如果这样,试图通过MsBuild .*proj文件完全删除StyleCop将不会关闭波浪线。您需要在Resharper设置中关闭插件。

要验证这一点,您可以在运行构建时查看MsBuild输出。您的StyleCop警告不应显示在MsBuild输出窗口中,但由于Resharper在后台连续运行StylecCop,它们仍将显示在错误窗口和编辑器中。

据我所知,当您启用Resharper时,没有简单的方法可以完全关闭StyleCop项目文件。

您可以做的是:重命名Settings.Stylecop文件或覆盖它with one that turns off StyleCop altogether,这将启用Resharper代码格式规则,但会关闭特定的StyleCop规则