一,添加ADO.NET实体数据模型(即edmx)

1,添加edmx
        新建一个类库项目,项目中添加新项,选择数据/ADO.NET实体数据模型,如下图。
 
点击添加,实体数据模型向导窗口,选择空EF设计器模型,然后点击完成,即创建edmx文件成功。
 
2,添加实体模型
接下来,往edmx设计器中添加实体模型。在设计器中右键新增/实体,或者从工具箱中拖一个实体过来。
二,添加T4模板(包括DbContext和Entity的)
1,添加T4模板
项目中添加新项,选择数据/EF 6.x DbContext生成器,如下图。
这时,项目中会增加两个文件,xxx.Context.tt和xx.tt,一个是DbContext上下文模板,另一个是实体的模板。
 
2,修改T4
新增加的T4模板并不能马上工作,必须做相关设置才可以,这一点非常重要。
首先,修改$edmxInputFile$为具体的edmx文件名,包括HwaDB.Context.tt和HwaDB.tt,如下图。
其次,要修改DbContext构造函数的内容,修改前默认如下图。
修改后的样子如下图。
要做两点改动,一是启用延迟加载改为false,二是修改HwaDB.Context.tt中HwaDBContainer的构造函数。
三,生成建表脚本
1,创建数据库连接
在edmx工作区右键菜单,根据模型生成数据库...,打开生成数据向导窗口,如下图。
 
选择新建连接,打开连接属性窗口,新建一个连接。
 
点击确定,回到生成数据库向导窗口,点击下一步,来到完成页,点击完成,生成sql脚本成功。
此时,项目中会自动生成一个sql脚本,如下图。
 
2,生成建表脚本及创建数据表
打开sql脚本,点击运行,或者在SQL SERVER中打开执行,创建数据表,前提是创建好数据库。

EF的Model First的更多相关文章

  1. Mysql –>EF edmx(model first)–> Sql server table

    一.mysql environment When we create an new database,first We need draw er diagram for somebody to sho ...

  2. EF Core Model更新迁移

    EF Core 迁移 感觉就是以前EF Code First的自动同步数据库功能 内容:在你新增.更新TableModel后,如何自动化的更新DB中的真实Table.以及对这些更改进行一个版本控制. ...

  3. Entity Framework(EF的Model First方法)

    EntityFramework,是Microsoft的一款ORM(Object-Relation-Mapping)框架.同其它ORM(如,NHibernate,Hibernate)一样, 一是为了使开 ...

  4. EF修改model自动更新数据库

    最近用MVC+EF学习时遇到修改model后而数据库没更新报错,就在网上找关于数据迁移自动更新数据库的,折腾了大半天终于弄了出来 第一步:在程序包管理器控制台里: Enable-Migrations ...

  5. MVC4 + EF为Model添加单独的验证属性

    可使用以下方式给Model加上相关的meta验证属性,这样实体的验证属性就不会被例如EF或其他工具自动生成的Model所替换了. using System.ComponentModel.DataAnn ...

  6. EF框架CodeFirst the model backing the 'PModelEntities' context has changed since the database was created. Consider using Code First Migrations to update the database

    1.采用code first 做项目时,数据库已经生成,后期修改数据库表结构.再次运行时出现一下问题: Entity Framework : The model backing the 'Produc ...

  7. EF优缺点的理解

    原先用的是三层架构中ADO.NET做底层开发,纯手工sql语句拼装.后来遇到一个MVC+EF项目,体会到了EF的强大性. 它是微软封装好一种ADO.NET数据实体模型,将数据库结构以ORM模式映射到应 ...

  8. 疑难杂症——EF+Automapper引发的查询效率问题解析

    前言:前面总结了一些WebApi里面常见问题的解决方案,本来打算来分享下oData+WebApi的使用方式的,奈何被工作所困,只能将此往后推了.今天先来看看EF和AutoMapper联合使用的一个问题 ...

  9. MVC5 + EF6 完整入门教程三:EF来了

    期待已久的EF终于来了 学完本篇文章,你将会掌握基于EF数据模型的完整开发流程. 本次将会完成EF数据模型的搭建和使用. 基于这个模型,将之前的示例添加数据库查询验证功能. 文章提纲 概述 & ...

随机推荐

  1. Hibernate级联删除时:Cannot delete or update a parent row: a foreign key constraint fails异常

    在删除主表数据时,报了一个异常 Cannot delete or update a parent row: a foreign key constraint fails 原因是主表中还包含字表的数据, ...

  2. JavaScript删除-confirm

    一> onclick="javascript:if (confirm('您确定要删除吗?注意:此操作不可恢复,请谨慎操作!')){return true;} return false; ...

  3. js 函数-Tom

    函数类型 在ECMAScript 中有三种函数类型:函数声明,函数表达式和函数构造器创建的函数.每一种都有自己的特点. 函数声明 函数声明(缩写为FD)是这样一种函数: 有一个特定的名称 在源码中的位 ...

  4. html5实现GIF动画!

     代码如下: <!DOCTYPE html><html>    <head>        <meta charset="utf-8"&g ...

  5. about shell

    摘抄 cat 等 cat主要有三大功能:1.一次显示整个文件.$ cat   filename2.从键盘创建一个文件.$ cat  >  filename只能创建新文件,不能编辑已有文件.3.将 ...

  6. asc.desc

    DESC 是descend 降序意思 asc 是ascend 升序的意思

  7. Android_开发工具的下载和开发环境的搭建

    一.Android开发工具的下载  Android开发者官网: http://developer.android.com/           Android开发工具:http://www.andro ...

  8. linux mount命令的用法详细解析

    挂接命令(mount)首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的.命令格式:mount [-t vfstype] [-o options] ...

  9. PHP 实现多服务器共享 SESSION 数据

    PHP 实现多服务器共享 SESSION 数据 2011 年 12 月 05 日评论暂缺 一.问题起源 稍大一些的网站,通常都会有好几个服务器,每个服务器运行着不同功能的模块,使用不同的二级域名,而一 ...

  10. 【c++】读写txt

    #include<iostrea> #include<fstream> int main() { ofstream fout;// 创建一个ofstream对象 fout.op ...