为什么Resharper会标记这个班级成员?

时间:2013-04-11 21:52:27

标签: c# variables boolean resharper

此处的“DeviceInCradle”显示为灰色:

private bool DeviceInCradle = false;

想想也许这是一个未使用的var,我对它进行了评论,但随后得知,“名称'DeviceInCradle'在类或命名空间中不存在'Duckbill.Platypus'”

我可以理解“= false”的灰化,因为默认情况下这是一个bool,但为什么会以这种方式使var的名称变灰?

3 个答案:

答案 0 :(得分:5)

Resharper希望私有字段名称是camelCased,而不是PascalCased。例如,这两个应该对Resharper来说是好的:

private bool deviceInCradle = false;

或者

private bool _deviceInCradle = false;

答案 1 :(得分:3)

如果将鼠标悬停在它上面,它应该告诉你:

Name 'DeviceInCradle' does not match rule 'InstanceField(private)'. Suggested name is '_deviceInCradle'.

换句话说,它的名称与Resharper的默认命名约定不匹配。

答案 2 :(得分:3)

也可能是变量未在任何地方使用。 ReSharper将灰显一个未使用的私有变量。或者是一个已设置但从未引用过的变量。