.net - 将枚举转换为字符串

标签 .net enums

在 .NET 3.5 中将枚举转换为字符串的首选方法是什么?

  • Enum.GetName
  • 枚举格式
  • 转字符串

为什么我应该选择其中一个而不是其他?是否表现更好?

最佳答案

从 C#6 开始,获取枚举名称的最佳方法是新的 nameof 运算符:

nameof(MyEnum.EnumValue);

// Ouputs
> "EnumValue"

这在编译时起作用,枚举被编译结果中的字符串替换,这反过来意味着这是最快的方法。

如果您认为枚举名称的混淆是值得的或重要的,那么对枚举名称的任何使用都会干扰代码混淆 - 这可能是一个完全不同的问题。

关于.net - 将枚举转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/483794/

相关文章:

c# - 为什么 C# 数组类型 IsSerializable 属性为 True?

c# - TFS 2010-从 checkin 任务中获取文件的特定版本

java - 在 C++ 中模拟 Java 枚举

java - 在单独的文件中为每个枚举定义方法

.net - 为什么@Html.EnumDropDownListFor 当你有一个枚举的数字定义值时添加一个空白(0)选择?

c# - 如何在没有公共(public)构造函数的情况下模拟/伪造/ stub 密封的 OracleException?

c# - SemaphoreSlim.WaitAsync 延续代码

java - 我可以在 Java 中设置枚举起始值吗?

c# - 使用线程通过 API 为数千用户导入数据

java - Struts2 - 如何访问嵌套枚举