entity framework – 生成类

我有一个现有的数据库。 我希望有一种方法来从这个数据库生成类文件。 但是,我似乎看到很多从类文件生成数据库。

有没有办法使用entity framework从现有的数据库生成类文件? 如果这样怎么样? 有人可以指点我的教程吗?

1)首先,您需要使用数据库生成EDMX模型。 要做到这一点,你应该添加新的项目到您的项目:

  • 从“模板”列表中select“ ADO.NET Entity Data Model ”。
  • 在“select模型内容”页面上,select“从数据库生成”选项,然后单击“下一步”。
  • select你的数据库。
  • 在“select您的数据库对象”页面上,选中表格。 如果需要,请select“视图”或“存储过程”。

所以现在你的项目中有Model1.edmx文件。

2)使用你的模型生成类:

  • 打开你的EDMX模型devise器。
  • 在devise表面右击 – >添加代码生成项目…
  • select在线模板。
  • EF 4.x DbContext Generator for C#selectEF 4.x DbContext Generator for C#
  • 点击“添加”。

注意有两个项目被添加到您的项目中:

  • Model1.tt (该模板为您的模型中的每个实体生成非常简单的POCO类)
  • Model1.Context.tt (该模板生成派生的DbContext用于查询和保存数据)

3)读/写数据示例:

  var dbContext = new YourModelClass(); //class derived from DbContext var contacts = from c in dbContext.Contacts select c; //read data contacts.FirstOrDefault().FirstName = "Alex"; //edit data dbContext.SaveChanges(); //save data to DB 

不要忘了你需要4.x版本的EntityFramework。 你可以在这里下载EF 4.1: Entity Framework 4.1 。

我发现非常好的解决scheme。 微软发布了entity framework电力工具testing版 : entity framework电力工具testing版2

在那里你可以生成POCO类,派生DbContext和代码优先映射的现有数据库在一些点击。 这是很不错的!

安装后,一些上下文菜单选项将被添加到您的Visual Studio。

用鼠标右键单击一个C#项目。 selectentity framework – >反向工程师代码优先(为现有数据库生成POCO类,派生DbContext和代码优先映射):

Visual Studio上下文菜单

然后select你的数据库,然后点击OK。 就这样! 这很容易。

  1. 打开EDMX模型
  2. 右键单击 – >从浏览器更新模型 – >存储过程 – >select您的存储过程 – >完成
  3. 查看解决scheme资源pipe理器旁边的模型浏览器。
  4. 转到function导入 – >右键单击您的存储过程 – >添加function导入
  5. select返回下的实体 – >从下拉菜单中select您的实体名称
  6. build立你的解决scheme

EDMX模式将不能使用EF7,但我发现一个社区/专业产品似乎是非常强大的: http : //www.devart.com/entitydeveloper/editions.html