zoukankan      html  css  js  c++  java
  • Entity Framework Power Tools安装和使用

    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

  • 相关阅读:
    component
    js的for循环中DOM变化不了,在循环结束才起效的问题
    mongodb 遇见不可行
    vue.js中$emit的理解
    最近前端关键词-模块化、前后端分离、单页面应用
    webpack的使用1
    一维数组的声明和使用
    ASP.net中的几种分页方法
    各种排序及原理
    数据结构-算法
  • 原文地址:https://www.cnblogs.com/webapi/p/5669063.html
Copyright © 2011-2022 走看看