我有这些枚举:
private enum FontSizeType
{
XSmall, //9
Small, //12
Medium, //18
Large, //24
XLarge, //36
XXLarge //47
}
private enum AlignOptions
{
Left,
Center,
Right
}
private enum ValueType
{
Text,
Barcode
}
Resharper的检查告诉我所有人“Enum会员'XSmall'[等]从未使用过”
然而我在我的组合框中使用它们,就像这样:
comboBoxType1.DataSource = Enum.GetNames(typeof(ValueType));
......为什么Resharper被愚弄了?或者是吗?
答案 0 :(得分:6)
ReSharper未检测到隐式用法。您可以使用[UsedImplicitly]告诉它隐式使用您的类型成员,然后它应该停止抱怨。
要在代码中使用UsedImplicitlyAttribute,您应该包含对JetBrains.Annotations.dll的引用或在项目中包含一些复制粘贴的源代码,有关详细信息,请参阅http://www.jetbrains.com/resharper/webhelp/Code_Analysis__Annotations_in_Source_Code.html。
您应该在每个枚举值上添加[UsedImplicitly]。
答案 1 :(得分:2)
您也可以使用此指令禁用投诉本身:
[SuppressMessage("ReSharper", "UnusedMember.Global")]
public enum ComplianceStatus
{
Notcompliant,
Unknown,
Warning,
Compliant,
Pendingrestart,
Pendinglogoff
}