一,添加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. netbeans环境的建立

    这是一个简单的实验,熟悉NetBeans的IDE环境的开发 首先下载一个NetBeans,可以在官网上下https://netbeans.org/downloads/index.html 要装NetB ...

  2. Spring security3入门(转)

    http://kingxss.iteye.com/blog/1908011 补充类图: 注意:1.修改为链接mysql数据库:             2.代码地址:https://github.co ...

  3. 字符设备 register_chrdev_region()、alloc_chrdev_region() 和 register_chrdev() (转载)

    1. 字符设备结构体 内核中所有已分配的字符设备编号都记录在一个名为 chrdevs 散列表里.该散列表中的每一个元素是一个 char_device_struct 结构,它的定义如下: static ...

  4. boost中的智能指针

    进行本地线程管理的 thread_specific_ptr 指针: 可以看这里:http://www.kingofcoders.com/viewNews.php?type=newsCpp&id ...

  5. JavaSE复习_8 泛型程序设计

    今晚看了core Java的泛型部分,万万没有想到,当时看培训班视频入门的一带而过的泛型,有这样多的细节,整理了一下书里面提到的一些自认为的重点,方便以后观阅.由于是复习,一些基础知识跳过. △泛型类 ...

  6. HTML5 学习笔记--------》HTML5概要与新增标签!

      一.HTML5概要 1.1.为什么需要HTML5 HTML4陈旧不能满足日益发展的互联网需要,特别是移动互联网.为了增强浏览器功能Flash被广泛使用,但安全与稳定堪忧,不适合在移动端使用(耗电. ...

  7. angularJS中ng-if的用法

    <!DOCTYPE html> <html ng-app> <head> <meta charset="utf-8"> <ti ...

  8. RecyleView

    RecyclerView是经典的ListView的进化与升华,它比ListView更加灵活,但也因此引入了一定的复杂性. 我们知道,ListView通过使用ViewHolder来提升性能.ViewHo ...

  9. phalcon几种分页方法

    phalcon几种分页方法 一: use Phalcon\Paginator\Adapter\Model as PaginatorModel; // Current page to show // I ...

  10. 第二章 Python基本元素:数字、字符串和变量

    Python有哪些内置的数据类型: True False #布尔型 42 100000000 #整型 3.14159 1.0e8 #浮点型 abcdes #字符串 2.1 变量.名字和对象 pytho ...