EF POWER TOOLS由数据库逆向CODE FIRST

前言

  利用db first的开发方式有很多可供选择的方案,一种可以用ado.net实体框架模型,由向导直接生成edmx,并生成数据库上下文,持久化类,这是一种方案,其次使用t4模板代码生成器生成上下文及实体类,本文使用Visual Studio 库中EF Power Tools根据现有数据库,生成 POCO 类、映射(配置)类和 DbContext 派生类,来实现code first开发。

准备工具:

vs2010或者vs2012

EF PowerTools插件,下载地址:http://visualstudiogallery.msdn.microsoft.com/72a60b14-1581-4b9b-89f2-846072eff19d/

一个现有的数据库

创建应用程序:

1、下载EF PowerTools并安装

2、创建一个控制台测试程序,

3、对数据库反向生成code first

  安装插件完成以后,在项目解决方案管理器右键,选择Entity Framework,会看到该插件提供的两种方式,1、对 Code First 进行反向工程,2、自定义反向工程模板

右键选择EF,选择第一项对Code First进行反向工程:

选择服务器及需要反向的数据库信息,确定以后自动生成 POCO 类、映射(配置)类和 DbContext 派生类,同时可以在 Visual Studio 的状态栏中看到反向工程过程的进度。过程完成后,会对项目进行以下更新。

在此期间进行的操作有:

使用连接字符串更新配置文件 (.config)

在项目中添加对 EntityFramework NuGet 包的引用

模型文件夹下生成 DbContext 派生类和一组 POCO 类。此外,还会在嵌套在模型文件夹下的映射文件夹下生成映射类。

注意:这将对数据库中的所有表进行反向工程,因此如果不希望操作所有表,需要从模型中手动删除不需要的表。

在初始代码生成覆盖以前生成的文件后,重新运行此命令。

如果您对生成这些类的方式不完全满意,可以在生成这些类后对其进行编辑,或者使用“自定义反向工程模板”命令,本文不做介绍。

4、只读方式查看实体数据模型(View Entity Data Model)

反向的项目也可以查看EF图形设计器件生成的图形实体模型,如下图操作:

图形设计器界面:

5、查看实体数据模型 XML

方式同上,使用此选项可以查看表示基础 Code First 模型的 EDMX XML。使用此选项的机会不会很多。偶尔在调试某些 Code First 问题时可能需要使用它。

6、查看实体数据模型 DDL SQL

使用此选项可以查看与基础 EDM 模型中的 SSDL 相对应的 DDL SQL 脚本。当您要查看将由模型生成的表和列时,可能需要使用此选项。

总结:

  本文只是初探,此种方式在使用中的问题目前本人还未碰到,在数据库存在的情况下进行code first开发不妨试试这种解决方案,文中示例随手一些,有问题欢迎大家一块探讨。

 
 

EF POWER TOOLS由数据库逆向CODE FIRST的更多相关文章

  1. EF Power Tools的Reverse Engineer Code First逆向生成Model时处理计算字段

    VS2013上使用EF Power Tools的Reverse Engineer Code First逆向生成Model时,没有处理计算字段.在保存实体时会出现错误. 可以通过修改Mapping.tt ...

  2. EF Power Tools 数据库逆向生成时T4模板修改

    VS2013上使用EF Power Tools的Reverse Engineer Code First逆向生成. 发现数据库中的decimal(18, 4)字段在生成的mapping类中没有精度和小数 ...

  3. ef code first transform,add ef power tools add-in,add tangible t4 editor for enhancement.

    use ef power tools, as to .edmx file,right click at view, choose generate database from model, then ...

  4. EF Power Tools

    EF Power Tools可以从数据库反向生成实体及映射文件.一般在使用EF,有Database First,Code First以及Model First.常用的是Database First和C ...

  5. EF Power Tools使用介绍

            EF Power Tools可以从数据库反向生成实体及映射文件.一般在使用EF,有Database First,Code First以及Model First.常用的是Database ...

  6. EF Power Tools参数不正确的解决方法

    在Visual Studio 2010安装了EF Power Tools Beta 3之后,希望根据本地现有数据库模型来生成基于Entity Framework Code First的代码时,经常出现 ...

  7. VS2015安装EF Power Tools

    前言 最近在研究EF觉得EF Power Tools比较强大,可以利用其特性来进行Code First模型验证等等,本以为在VS2015扩展和更新中能找到EF Power Tools,结果未找到,还得 ...

  8. Installing EF Power Tools into VS2015

    TLDR: If you don’t want to do the tasks (even though they are so easy) you can download the updated ...

  9. EF Power Tools 参数错误 HRESULT:0x80070057 (E_INVALIDARG))

    数据库名称使用数字开头,使用EF Power Tools生成映射时,会提示:“参数错误. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))”. 解 ...

随机推荐

  1. RQNOJ PID3 / Jam的计数法

    题目描述 Jam是个喜欢标新立异的科学怪人.他不使用阿拉伯数字计数,而是使用小写英文字母计数,他觉得这样做,会使世界更加丰富多彩.在他的计数法中,每个数字的位数都是相同的(使用相同个数的字母),英文字 ...

  2. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(8)-DbSession线程内唯一

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(8)-DbSession线程内唯一 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建  ...

  3. IEnumerable,IQueryable的区别

    IEnumerable,IQueryable之前世今生 IEnumerable<T>在.Net2.0中我们已经很熟悉了.你想要利用Foreach迭代吗?实现IEnumerable<T ...

  4. 【MongoDB数据库】Java MongoDB CRUD Example

    上一页告诉我们MongoDB 命令入门初探,本篇blog将基于上一篇blog所建立的数据库和表完毕一个简单的Java MongoDB CRUD Example.利用Java连接MongoDB数据库,并 ...

  5. I/O概述和审查操作

    I/O流量可表示非常多不同种类的输入源和输出目的地.它包含一个简单的字节流,基本数据(int.boolean.double等待),本地化字符,和对象.仅是简单地传递数据,另一些流能够操作和转换数据 不 ...

  6. Cocos2d-android游戏引擎-介绍

    一.游戏引擎概念 什么是游戏引擎       游戏引擎是指一些已编写好的可编辑游戏系统或者一些交互式实时图像应用程序的核心组件.这些系统为游戏设计者提供各种编写游戏所需的各种工具,其目的在于让游戏设计 ...

  7. Git学习笔记1--Git原理简单介绍

    Git是一个分布式的版本号控制工具,假设想用github等版本号控制系统,核心就是git,以下简介一些git的基础原理,原文:http://git-scm.com/book/en/Getting-St ...

  8. Facebook HHVM 和 Hack 手册 --- 2. HHVM能做什么

    HHWM简介: HHWM(HipHop VM) 是Facebook推出的用来执行PHP代码的虚拟机,它是一个PHP的JIT(Just-In- Time)编译器,同时具有产生快速代码和即时编译的优点. ...

  9. C语言编写Windows服务程序

    原文:C语言编写Windows服务程序 #include <Windows.h> #include <stdio.h> #define SLEEP_TIME 5000 // 间 ...

  10. MySQL 一般查询日志(General Query Log)

    与大多数关系型数据库,日志文件是MySQL数据库的一个重要组成部分.MySQL有几种不同的日志文件,通常包括错误日志文件,二进制日志,通用日志.慢查询日志,等等. 这些日志能够帮助我们定位mysqld ...