我知道我可以依靠系统自动将SummerLineUp显示为" Summer Line Up"但是我希望能更好地控制我的枚举显示的文本。
所以我想将Describe属性用于友好的显示,如下所示:
public enum ProductTypeOptions
{
[Describe("Summer line up")]
ProductA = 1,
[Describe("Fall line up")]
ProductB = 2,
[Describe("Winter line up")]
ProductC = 3,
}
那些显示漂亮而漂亮,但在使用&#34进行验证时失败;夏季排队不是有效的产品类型选项"。
我可以使用不同的属性吗?
答案 0 :(得分:1)
更简单的方法是将Terms
装饰添加到ProductTypeOptions
每个项目。
所以代码是:
public enum ProductTypeOptions
{
[Terms(new string[] { "Summer line up", "Whatever more you want" })]
[Describe("Summer line up")]
ProductA = 1,
[Terms(new string[] { "Fall line up" })]
[Describe("Fall line up")]
ProductB = 2,
[Terms(new string[] { "Winter line up" })]
[Describe("Winter line up")]
ProductC = 3,
};
现在你的机器人会自动理解" Summer line up"作为ProductA。
答案 1 :(得分:0)
通过使用"消息"我最终得到了可以接受的东西。描述的属性:
public enum ProductTypeOptions
{
[Describe("Summer line up", message: "ProductA")]
ProductA = 1,
[Describe("Fall line up", message: "ProductB")]
ProductB = 2,
[Describe("Winter line up", message: "ProductC")]
ProductC = 3,
}
当用户选择" Summer line up"时,显示的实际消息是" ProductA"。对于我的需要,这很好。