2

我正在尝试检索[Display]下面保存在数据库中的任何枚举的文本(即,如果没有,则对应的是“不,谢谢。”)而不必@if在我的视图中编写一个块。我想这是不可能的,但我想我会问。

public enum MyEnum
{
    [Display(Name = "No thanks.")]
    None,
    [Display(Name = "Yes, send me your 100 Packet.")]
    100Packet,
    [Display(Name = "Yes, send me your 200 Packet.")]
    200Packet
}

现在,我唯一的解决方案是在我看来这样做:

@Model.MyEnumRadioButton // displays saved item in DB (i.e., "100Packet")

@if (Model.MyEnumRadioButton == MyEnum.None)
{
    <text>No thanks.</text>
}
....

并对enum. 对于这个小例子来说没什么大不了的,但我有很多不同enum的,有些有多达 10 个选择。

例如,我可以做些什么@Model.MyEnumRadioButton来让它显示文本?

有什么想法吗?提前致谢。

4

2 回答 2

2

我找到了一个简单的答案来解决我的问题:

MVC.net 在视图中获取枚举显示名称,而无需在视图中引用枚举类型

我所要做的就是@MyEnum.100Packet.DisplayName()

于 2012-11-19T23:21:00.737 回答
1

看到这篇文章,他正在使用描述属性来实现我相信的你:

如何使用枚举值的自定义字符串格式设置枚举绑定组合框?

于 2012-11-19T21:28:09.977 回答