EF Power Tools使用介绍
EF Power Tools可以从数据库反向生成实体及映射文件。一般在使用EF,有Database First,Code First以及Model First。常用的是Database First和Code First。Database First是先生成数据库,然后生成edmx文件,然后进行相关的操作,缺点就是数据库一更新,这个文件就需要更新。而Code First就是先定义实体及关系,然后反向生成数据库。这种方式比较灵活,但是一般情况下都是先进行数据库设计,然后再来写实体的。
综合上面的情况,现在一般开发就是用Database First和Code First两种相结合的形式,具体怎么结合法呢,就是先设计数据库,生成数据库,然后用EF Power Tools反向生成实体层,然后开发的时候,是采用Code First的形式进行开发。这种方式能避免上面两种方式的缺点。当然要使用这种方式,EF Power Tools就是一个非常重要的工具。
下载地址:http://visualstudiogallery.msdn.microsoft.com/72a60b14-1581-4b9b-89f2-846072eff19d/
下载完成后,直接进行安装,安装完成后就可以在项目中使用了。
1、在项目上,右键,安装完成后,会出现一个“Entity Framework”菜单,点击里面的“Reverse Engineer Code First”
2、配置数据库连接
3、配置完成后,点击确定,它就会自动的生成相应的实体代码及映射代码(项目要添加Entity Framework引用,并且生成的实体代码是Fluent Api的形式的)
有时候点击确定后,会弹出一个错误:
这时候,有两种尝试的解决办法,一是选择这个项目,右键“清理”;另外一种解决的办法是在配置连接的时候,点击那个高级按钮,更改一下里面的设置:把Persist Security Info设置成True就行了。
EF Power Tools工具除了可以生成实体类代码及映射代码外,也可以反向生成T4代码模板;选择项目,右键会出现一个“Entity Framework”菜单,点击里面的“Customize Reverse Engineer Templates”
就可以生成对应的T4模板:
可以更改T4模板里面的内容,生成自定义的代码格式。
参考资料:
http://msdn.microsoft.com/zh-CN/data/jj593170.aspx
http://www.cnblogs.com/LingzhiSun/archive/2011/05/24/EFPowerTool_1.html
EF Power Tools使用介绍的更多相关文章
- EF POWER TOOLS由数据库逆向CODE FIRST
EF POWER TOOLS由数据库逆向CODE FIRST 前言 利用db first的开发方式有很多可供选择的方案,一种可以用ado.net实体框架模型,由向导直接生成edmx,并生成数据库上下文 ...
- EF Power Tools参数不正确的解决方法
在Visual Studio 2010安装了EF Power Tools Beta 3之后,希望根据本地现有数据库模型来生成基于Entity Framework Code First的代码时,经常出现 ...
- VS2015安装EF Power Tools
前言 最近在研究EF觉得EF Power Tools比较强大,可以利用其特性来进行Code First模型验证等等,本以为在VS2015扩展和更新中能找到EF Power Tools,结果未找到,还得 ...
- EF Power Tools的Reverse Engineer Code First逆向生成Model时处理计算字段
VS2013上使用EF Power Tools的Reverse Engineer Code First逆向生成Model时,没有处理计算字段.在保存实体时会出现错误. 可以通过修改Mapping.tt ...
- EF Power Tools 数据库逆向生成时T4模板修改
VS2013上使用EF Power Tools的Reverse Engineer Code First逆向生成. 发现数据库中的decimal(18, 4)字段在生成的mapping类中没有精度和小数 ...
- EF Power Tools
EF Power Tools可以从数据库反向生成实体及映射文件.一般在使用EF,有Database First,Code First以及Model First.常用的是Database First和C ...
- 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 ...
- EF Power Tools 参数错误 HRESULT:0x80070057 (E_INVALIDARG))
数据库名称使用数字开头,使用EF Power Tools生成映射时,会提示:“参数错误. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))”. 解 ...
- Visual F# Power Tools 简单介绍
Visual F# Power Tools 简单介绍 Auto-generating XmlDoc 当在函数定义的前面输入 ///< 以后.会自己主动生成 XML 文档.并会自己主动提取函数中的 ...
随机推荐
- AC日记——[USACO5.4]奶牛的电信Telecowmunication 洛谷 P1345
[USACO5.4]奶牛的电信Telecowmunication 思路: 水题: 代码: #include <cstdio> #include <cstring> #inclu ...
- Web前端开发最佳实践(1):前端开发概述
引言 我从07年开始进入博客园,从最开始阅读别人的文章到自己开始尝试表达一些自己对技术的看法.可以说,博客园是我参与技术讨论的一个主要的平台.在这其间,随着接触技术的广度和深度的增加,也写了一些得到了 ...
- [实战]MVC5+EF6+MySql企业网盘实战(7)——文件上传
写在前面 周末了,在家继续折腾网盘,今天实现网盘文件的上传. 系列文章 [EF]vs15+ef6+mysql code first方式 [实战]MVC5+EF6+MySql企业网盘实战(1) [实战] ...
- html 条件注释判断浏览器版本<!--[if lt IE 9]>
<!--[if lte IE 8]><script>window.location.href='http://support.dmeng.net/upgrade-your-br ...
- 使用gradle建立java application
建立项目目录mkdir java-democd java-demo 初始化项目目录gradle init --type java-application 编译./gradlew build 运行./g ...
- python动态获取对象的属性和方法 (转)
转自未知,纯个人笔记使用 首先通过一个例子来看一下本文中可能用到的对象和相关概念. #coding:utf-8 import sys def foo():pass class Cat(object): ...
- BNUOJ 52509 Borrow Classroom
最近公共祖先. 如果$A$到$1$的时间小于$B$到$C$再到$1$的时间,那么一定可以拦截. 如果上述时间相等,需要在到达$1$之前,两者相遇才可以拦截. #include<bits/stdc ...
- BNUOJ 52506 Captcha Cracker
简单模拟题. #include<bits/stdc++.h> using namespace std; ]; int T; int main() { scanf("%d" ...
- Jquery操作select标签的常用方法
<select id="search"> <option value='1'>baidu</option> <option value=' ...
- 关于 Unity 版本升级后可能会引起偶发光照图错乱的问题
近期项目遇到一个奇怪的问题,使用 Unity 2017 版本升级后,团队中某些人的机器光照图总是不正确,而有的人是正确的,一直不知道为什么. 为了查到这个奇怪问题的原因,首先查看了美术的在 Max 中 ...