自定义名称到枚举值

时间:2012-09-25 07:05:37

标签: c# enums data-annotations

我有一个API的枚举值。

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

我的枚举如下:

public enum TopicType
{
    All = 0,
    Message=1,
    CalendarEvent=2,
    Upload=4, 
    ToDo=8,
    ToDoList=16,
    Document=32
}

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

2 个答案:

答案 0 :(得分:7)

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

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

希望这有帮助

答案 1 :(得分:5)

我认为您可以尝试[Display()]注释。

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