代码检查:使用 'nameof' 表达式引用枚举成员名称
此检查建议使用 nameof 表达式,而不是对枚举成员调用 ToString()。 在 C# 中,当在编译时引用成员名称时, nameof 运算符是更优的选择。 这可以确保更好的性能,避免运行时的潜在问题,并提高代码的可读性。
在下面的示例中,与其使用 .ToString() 将枚举转换为字符串,您可以使用 nameof 运算符显式引用枚举成员的名称。
class SampleClass
{
string Foo()
{
return MyEnum.FIRST.ToString();
}
}
public enum MyEnum
{
FIRST,
SECOND
}
class SampleClass
{
string Foo()
{
return nameof(MyEnum.FIRST);
}
}
public enum MyEnum
{
FIRST,
SECOND
}
切换到 nameof 运算符具有以下优点:
确保编译时安全,因为对枚举名称的任何更改都会自动更新。
消除与
ToString()调用相关的运行时开销。通过显式表达开发者的意图来增强代码的清晰性。
最后修改日期: 2025年 9月 26日