我可以找到一堆教程,介绍如何首先实现模型的枚举支持,然后首先实现代码:
http://msdn.microsoft.com/en-us/data/jj248772.aspx
http://msdn.microsoft.com/en-us/data/hh859576.aspx
任何人都可以向我解释或向我提供有关如何正确实现数据库优先应用程序的枚举支持的一些说明。我想我必须从edmx设计器开始,右键单击表格中的一个列并转换为枚举?谢谢你的建议。我正在使用.NET 4.5和Enity Framework 5.0
答案 0 :(得分:11)
我最后做的是在数据库中将列类型更改为int然后我从数据库进入edmx和更新模型,然后我去添加了枚举类型,然后将edmx设计器中的列类型更改为该枚举的类型。更新了poco,一切都很好!
答案 1 :(得分:10)
您也应该阅读this。
通过数据库优先操作
,不会在模型中创建枚举类型
- 从现有数据库创建EDM时,模型中未定义枚举。
- 从数据库更新模型将保留您的Enum类型声明,但同样不会检测数据库中的Enum构造。
我见过使用T4的a couple of solutions,但在我的具体情况下,它只是为我的项目增加了不必要的复杂性。所以我会先输入enums代码。
答案 2 :(得分:4)
这是我的猜测: 从数据库生成.edmx文件后,您可以按照以下链接中的指南进行操作:http://msdn.microsoft.com/en-us/data/jj248772.aspx