如何将显示属性设置为E.F.生成的枚举?

时间:2013-08-05 23:49:17

标签: c# entity-framework

我刚刚进入EF。在过去的两年里,我一直在手工编写数据库代码,最后厌倦了它。我在使用带有E.F的枚举时遇到了一个问题。我以前编码的所有枚举都使用了显示属性,这样当在xaml中绑定到数据表单或任何其他控件时,会显示友好名称而不是代码名称。 EX显示“浅棕色”而不是“LightBrown或light_brown”等。所有枚举设计器允许设置值和名称。有没有办法让这些自动枚举在绑定时显示不同的名称?

[Display(Name="Light Brown")]
Light_Brown,

修改 我不是在寻找如何将枚举名称转换为更友好的名称。我已经知道该怎么做了。我的问题是访问自动生成的代码,用于使用实体框架设计器自动生成的枚举。似乎有一种方法可以引用外部代码文件,所以我将对此进行研究。

2 个答案:

答案 0 :(得分:2)

尝试使用

[Description("Light Brown")]
Light_Brown,

查看此answer您可能需要添加转换器。

答案 1 :(得分:1)

在堆栈上找到问题和答案。您可以使用设计器中的“参考外部类型”选项来规避此问题。这只是您使用数据库第一次设计实体框架而不是模型第一次设计时的解决方案。

Entity Framework 5 Enums with Description attribute using Database First

作者在他的问题评论中回答了他自己的问题。

相关问题