【问题标题】:Get Exact Name Of Enum Element In C# [duplicate]在C#中获取枚举元素的确切名称[重复]
【发布时间】:2016-09-11 08:05:16
【问题描述】:

我有一个程序集文件,它定义了一个enum,如下所示:

public enum DataType{  
    @byte,  
    @short,  
    @int,  
    @long,
    ...  
}  

当我通过调用typeof(DataType).GetEnumNames() 或Enum.GetNames(typeof(DataType)) 方法获得其名称时,我将获得以下字符串文字:
["byte", "short", "int", "long", ...]。
如何获得元素的确切名称?
枚举元素的命名是否有错误?

【问题讨论】:

标签: c# .net reflection enums


【解决方案1】:

您实际上得到了枚举中这些字段的正确名称。如 MSDN 中所述:

关键字是预定义的、保留的标识符,对编译器具有特殊意义。除非它们包含 @ 作为前缀,否则它们不能用作程序中的标识符。例如,@if 是有效标识符,但 if 不是,因为 if 是关键字。1

【讨论】:

    猜你喜欢
    • 2012-12-28
    • 2016-12-07
    • 2018-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-08
    • 2022-01-12
    • 1970-01-01
    相关资源
    最近更新 更多