我使用VS 2012和EF 5.我有我想从现有的数据库中创建POCO类的现有数据库。 我跟着步骤的ADO.NET实体数据模型添加到我的项目。 我通过向导去使用现有的数据库。 然后,它创建的EDMX和TT文件与设计师开放。 不过,我想创建POCO对象,并使用它们。 微软网站指出,POCO实体框架生成器是过时,我应该使用的DbContext发电机。 我想不出我用它来生成POCO类的步骤。 我只看到EDMX设计师。 我真的不希望,甚至一个EDMX文件,而只是POCO类。 我怎样才能从使用EF 5和VS 2012的现有数据库中创建POCO类?
Answer 1:
使用EF 5.x中的DbContext流利发电机
您可以在线模板添加:
- 生成现有的数据库EDMX
- 选择
Add New Item
- 搜索POCO在线模板
- 加入EF 5.x中的DbContext流利发电机
这将增加三个T4模板到您的项目:
- XXX.Context.tt -从上下文继承的DbContext
- XXX.Entities.tt - POCO实体
- XXX.Mappings.tt -为每个实体流利的映射
但你需要手动设置路径,您的EDMX数据模型。 每个模板都行string inputFile = @"$edmxInputFile$";
。 这里需要提供您的EDMX文件的名称:
string inputFile = @"Northwind.edmx";
Answer 2:
这样做的过程现在相当精简,它似乎。 从接受答案的步骤现在很容易从EDMX设计师本身做。 基本上,
- 通过添加ADO.NET实体数据模型的项目从现有的数据库模型(EDMX)(见这里有详细介绍),
- 然后
打开实体设计的.edmx文件。
实体设计表面上右键单击空白区域,指向添加代码生成项目。
在添加新项对话框中,选择在线模板和搜索联机模板文本框中键入的DbContext。
选择适当的版本为模板(5.0,如果你想指定的实体框架5.0)。
单击确定。
这将完成所有的工作,显然。 这里的报价说明请参考联机模板为安装EF 5.x中的DbContext流利的发电机是必需的。 如果您有它已经安装了,也没有必要在网上的模板,但在已安装的模板来进行搜索。
欲了解更多信息,您可以检查此页,节“要使用的DbContext生成模板来生成对象层代码”。
文章来源: Entity Framework 5 - How to generate POCO classes from existing database