【发布时间】:2016-06-20 10:35:28
【问题描述】:
我有枚举值和使用 DataAnnotations 的 Display 属性,在 Display 属性的下拉列表值中正确显示,但是当从数据库中检索数据时,它显示的值不是使用 DataAnnotations 分配的显示属性文本。我如何在我的视图中获取显示值。 我的枚举
public enum CareerLevel
{
[Display(Name = "Entry Level")]
Level1,
[Display(Name = "Experienced Professional")]
Level2,
[Display(Name = "Department Head")]
Level3
}
这是我想要显示“入门级”等值的视图
@Html.DisplayFor(modelItem => item.CareerLevel)
它显示 Level1 而不是 Entry Level 。我应该在我的视图或枚举中进行哪些更改??
【问题讨论】:
-
this answer中的扩展可以用来解决你的问题吗?
-
我相信最简洁的实现是创建一个新的显示模板格式链接到重复标志中,这样您的视图比在视图中调用扩展方法要干净得多。
-
实施这个解决了我的问题,而视图没有任何变化codeproject.com/Articles/776908/Dealing-with-Enum-in-MVC
标签: c# asp.net-mvc enums