ReSharper 和规则集文件
Posted
技术标签:
【中文标题】ReSharper 和规则集文件【英文标题】:ReSharper and Ruleset files 【发布时间】:2011-05-18 17:07:42 【问题描述】:我创建了一个项目并添加了一个规则集文件。然后我故意违反规则以确保它正常工作,但事实并非如此。
这是我启用的规则。
CA2211 - Microsoft.Usage - “非常量字段不应该是 可见。”
错误代码:
public class Foo
public string foobar = "Hello World";
它编译得很好,没有警告或错误。我认为这可能与 ReSharper 覆盖它有关?我不知道。关于如何解决此问题的任何想法?
【问题讨论】:
这可能是您想向 JetBrains 提交的问题/错误。 【参考方案1】:根据Compare Visual Studio 2010 Products...
如果您运行的是 VS 2010 Premium 或 Ultimate,您应该可以使用“静态代码分析”。如果您是并且该功能未显示,您可能会考虑重新安装 Visual Studio。如果您没有运行其中任何一个,您将无法访问该功能,抱歉。
但是,您仍然可以使用 FxCop 来验证您的代码。
注意:该链接指向 FxCop 10.0。
【讨论】:
【参考方案2】:CA2211 仅验证静态字段。如果你也想检查实例字段,你应该启用CA1051 (Microsoft.Design.DoNotDeclareVisibleInstanceFields)。
【讨论】:
好吧,我最终检查了规则集的每个框(所有规则)......当我编码错误时,它仍然没有给我任何警告。我认为这只是 ReSharper 以某种方式接管了这项工作。 当您说您“添加了一个规则集文件”时,您是简单地将文件添加到项目中,还是您实际上将其指定为项目的规则集(例如:通过代码分析页面在项目属性对话框中)? 我的属性对话框中没有“代码分析”选项。我认为该部分因重新锐化而被杀死。我记得我之前看过。 :-/ 我们有 ReSharper,我们在项目属性中有一个“代码分析”页面。因此,除非您的设置有什么不寻常之处,否则我认为 ReSharper 不是问题所在。您是否尝试过禁用 ReSharper 只是为了看看这是否会有所作为?以上是关于ReSharper 和规则集文件的主要内容,如果未能解决你的问题,请参考以下文章
在 InspectCode 中应用 Resharper 命名规则
如何使用 Resharper 准确找出哪个规则将语法突出显示应用于 VS2022 中的特定代码元素?