Entity Framework Power Tools是一个由EntityFramework开发小组提供的工具,它可以从现有数据库生成Fluent款式的Code First代码。

大致来说,这个工具有这样几个功能:
1) 按照现有数据库结构,生成Code First POCO class、DbContext class和相应的mapping class。

2) 以designer模式或XML模式查看POCO class对应的Entity Data Model (edmx) 。

3) 查看Entity Data Model所对应的DDL。

4) 生成EF Generated View提高EF性能。

Entity Framework Power Tools安装

1、VS-工具-扩展管理器-搜索:Entity Framework Power Tools-然后安装

2、安装完成后,然后重启VS

在项目上单击右键,在弹出的菜单中可以看到增加了一个Entity Framework的菜单项,里面有一个Reverse Enginner Code First。单击它以后出现选择数据连接的窗口,建立好数据连接之后它会自动地生成所有数据表所映射的实体类和对应的映射类(放在Mapping文件夹中),并且还自动生成了DbContext类。用生成的这些类取代原来通过EF直接建立的实体类和Context,强大吧。

3、Entity Framework Power Tools生成的部分代码

model news

using System;
using System.Collections.Generic; namespace Web.Models
{
public partial class news
{
public int ID { get; set; }
public string title { get; set; }
public string cons { get; set; }
public int counts { get; set; }
public System.DateTime times { get; set; }
}
}

model admin

using System;
using System.Collections.Generic; namespace Web.Models
{
public partial class admin
{
public int ID { get; set; }
public string username { get; set; }
public string password { get; set; }
public Nullable<System.DateTime> logintimes { get; set; }
}
}

DbContext

using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using Web.Models.Mapping; namespace Web.Models
{
public partial class mvc_ceshi1Context : DbContext
{
static mvc_ceshi1Context()
{
Database.SetInitializer<mvc_ceshi1Context>(null);
} public mvc_ceshi1Context()
: base("Name=mvc_ceshi1Context")
{
} public DbSet<admin> admins { get; set; }
public DbSet<news> news { get; set; } protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Configurations.Add(new adminMap());
modelBuilder.Configurations.Add(new newsMap());
}
}
}

web.config也会生成链接字符串

4、新建类库注意事项

1. 如果是新建的类库需先引用Entity Framework.dll,不然如图异常
2. 链接数据库的时候没有在“高级设置”中设置“安全连接”,如图异常
异常图(参数错误。(异常来自HRESULT:0x80070057(E_INVALIDARG))):

MSDN:https://msdn.microsoft.com/zh-CN/data/jj593170

Entity Framework Power Tools安装和使用的更多相关文章

  1. VS2015下安装Entity Framework Power Tools

    Entity Framework Power Tools是一个由EntityFramework开发小组提供的工具,它可以从现有数据库生成Fluent款式的Code First代码. 怀着激动的心情安装 ...

  2. Visual Studio 2015上安装Entity Framework Power Tools

    Entity Framework Power Tools是个非常好用的EF Code First插件.通过它能够非常简单地生成和数据库结构匹配的model和dbcontext代码.使用的方法,这里有介 ...

  3. 自己动手,让Entity Framework Power Tools在VS2015重放光彩

    Entity Framework Power Tools是一个由EntityFramework开发小组提供的工具,它可以从现有数据库生成Fluent款式的Code First代码. VS Galler ...

  4. Code First配合Entity Framework Power Tools Beta 4使用

    基于现有数据库生成POCO数据类和数据库上下文需要借助Visual Studio一个扩展插件-- Entity Framework Power Tools(一个Code First反向工程工具).只要 ...

  5. 代码生成工具——Entity Framework Power Tools

    Entity Framework Power Tools是VS上的一个根据数据库生成Model的Code First映射工具.在VS里面右键即可看到.什么,没有? 别慌,可以单独下载的,见 https ...

  6. VS2015配置Entity Framework Power Tools Bate4,还有一些使用与注意的地方

    今天使用vs2015重新安装了这个名为Entity Framework Power Tools的插件,由于它只支持到2013,因此需要进行一些操作方能使用 下面是一些参考文档 http://www.c ...

  7. Entity Framework Code-First(23):Entity Framework Power Tools

    Entity Framework Power Tools: Entity Framework Power Tools (currently in beta 3) has been released. ...

  8. Entity Framework Power Tools

    http://visualstudiogallery.msdn.microsoft.com/72a60b14-1581-4b9b-89f2-846072eff19d

  9. Entity Framework Power Tools Beta 3

    http://visualstudiogallery.msdn.microsoft.com/72a60b14-1581-4b9b-89f2-846072eff19d/ PM> Install-P ...

随机推荐

  1. Laravel-Administrator enum使用数字key

    参考连接:Enum filter with numeric values 修改Fields\Enum::build()方法 $options['options'][] = array( 'id' =& ...

  2. Part 52 Attributes in C#

  3. 收集一下Windows7系统啊

    Windows7系统:http://down.662p.com/list/141_1.html   萝卜家园WIN7系统X86位旗舰特别GHOST版2014年12月 这个是萝卜家园WIN7系统X86位 ...

  4. Cisco基本命令配置

    实验一 路由器的基本命令操作 1 实验目标 ü 熟悉路由器的命令行操作 ü 能够使用命令行帮助 ü 能够查看路由器接口信息 ü 能够产看路由器配置信息 ü 能够配置以太网接口 ü 能够配置广域网接口 ...

  5. Row_Number实现分页(适用SQL)

    1:首先是 select ROW_NUMBER() over(order by id asc) as 'rowNumber', * from table1 生成带序号的集合 2:再查询该集合的 第 1 ...

  6. js选中下拉框的默认选项

    //这是修改时选中 $("#type").find("option[value='"+factory+"']").attr("se ...

  7. UI5_UINavigation传值

    // // AppDelegate.m // UI5_UINavigation传值 // // Created by zhangxueming on 15/7/7. // Copyright (c) ...

  8. UI2_ButtonChess

    // // AppDelegate.m // UI2_ButtonChess // // Created by zhangxueming on 15/6/30. // Copyright (c) 20 ...

  9. Coarse-Grained lock 粗粒度锁

    用一个锁Lock一组相关的对象 有时,需要按组来修改多个对象. 这样,在需要锁住其中一个的时候,必须连带地将其他的对象都上锁. 为每一个对象都加上一个锁是很繁琐的. 粗粒度锁是覆盖多个对象的单个锁. ...

  10. 关于document.write

    document.write的用处 document.write是JavaScript中对document.open所开启的文档流(document stream操作的API方法,它能够直接在文档流中 ...