ReSharper忽略任何带下划线的方法的命名规则.新的"功能"或配置错误?

Chr*_*ons 3 resharper visual-studio-2013 resharper-8.2

我在Visual Studio 2013中运行了ReSharper v8.2.1(Build 8.2.1000.4556).我只是注意到行为,如果我在方法的名称中加上下划线,"Inconsistent Naming"警告会完全消失.例如:

public void zzz()
{
    // The ReSharper warning appears for this one, zzz()
}

public void zz_z()
{
    // But not this one
}
Run Code Online (Sandbox Code Playgroud)

我只是将我的ReSharper设置重新设置为出厂默认值,以确保我没有其他干扰,并且相同的行为仍然存在.

我检查了"方法,属性和事件"(产生"zzz()"警告的有效设置)下的命名约定,并且名称样式设置为"UpperCamelCase",因为我一直都知道它.没有选择"下划线宽容"设置.

所以,问题是,这是一个新的"功能",我在某处错误地配置了某些东西,还是我错过了一些完全明显的东西?

vcs*_*nes 7

我不确定这是否是8.1中的新内容,但Resharper不会对下划线方法名称发出警告,因为这是事件处理程序的惯例,例如object_Event(...).Resharper没有标记它,因为它试图允许该约定,这就是许多代码生成器产生的.

您可以通过转到Resharper - >选项 - >代码编辑 - > C# - >命名样式 - >高级设置...然后将"字段上的事件订阅"更改为其他内容来更改此设置$object$_$event$,例如$object$On$event$.

然后它将开始对名称中带下划线的方法进行分析.