我一直在使用string
属性来表示一些模型对象来表示枚举。我只使用字符串,因为在Entity Framework Code First中还没有枚举支持。无论如何,我注意到System.ComponentModel.DataAnnotations
中有一个属性叫做EnumDataType
。我试着设置这个属性,但它似乎没有影响任何东西。EnumDataType属性在ASP.NET MVC中做了什么?
我应该提到我的最终目标是在“创建”或“编辑”视图中为任何枚举类型显示适当的下拉列表。我想可能EnumDataType
会在一个自动脚手架场景中使这更容易,但我不确定是这种情况。
三个问题:
- 是否
EnumDataType
在ASP.NET MVC目的? - 如果是,它有什么作用?
- 我是否需要我的模型属性为
int
(而不是string
)才能利用EnumDataType
?
+1和感谢。我想我可能需要一个辅助方法。我是否需要每个枚举类型的帮助器方法,还是可以编写一个适用于任何枚举类型的通用方法? – devuxer 2011-04-27 20:35:36
我相信应该可以编写适用于所有枚举类型的单一方法,因为枚举类型将从属性中提取。 – 2011-04-27 20:41:07