自定义名称到枚举值

Tom*_*ove 4 c# enums data-annotations

我有一个通过API传递的值的枚举.

这些名称很好,但有一个我想用数据注释改变,但你怎么做?

我的枚举看起来像:

public enum TopicType
{
    All = 0,
    Message=1,
    CalendarEvent=2,
    Upload=4, 
    ToDo=8,
    ToDoList=16,
    Document=32
}
Run Code Online (Sandbox Code Playgroud)

我想在编码时将"ToDo"更改为"ToDoItem",但由于我的枚举对象的序列化,我无法更改枚举中的值,因此我将不得不使用数据注释,任何建议?

Dis*_*ame 7

无论您想要将ToDo更改为ToDoItem(单独讨论),您都可以使用以下方法轻松实现:

public enum TopicType
{
  All = 0,
  Message=1,
  CalendarEvent=2,
  Upload=4, 
  [Display(Name = "ToDoItem")]
  ToDo=8,
  ToDoList=16,
  Document=32
}
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助


Raj*_*ian 5

我想你可以试试[Display()]Annotation.

我希望这是你所期待的......