zoukankan      html  css  js  c++  java
  • 使用Entity Framework通过code first方式创建数据库和数据表

    开发环境 WIN10 Entity Framework6.0  MVC5.0  开发工具 VS2015  SqlServer2012

    1.创建上下文Context继承DbContext,并创建其他的业务类,这些业务类会创建对应的数据表。

     1 public class AccountContext:DbContext
     2     {
     3         public AccountContext():base("AccountContext") { }
     4         public DbSet<SysUser> SysUsers { get; set; }
     5         public DbSet<SysRole> SysRoles { get; set; }
     6         public DbSet<SysUserRole> SysUserRoles { get; set; }
     7 
     8         protected override void OnModelCreating(DbModelBuilder modelBuilder)
     9         {
    10             modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
    11         }
    12     }

    2.在web.config配置文件的entityFramework节点中加入context节点

     1 <entityFramework>
     2     <contexts>
     3       <context type="MVCDemo.DAL.AccountContext,MVCDemo" disableDatabaseInitialization="false">
     4         <databaseInitializer type="MVCDemo.DAL.AccountInitializer,MVCDemo"></databaseInitializer>
     5       </context>
     6     </contexts>
     7     <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
     8       <parameters>
     9         <parameter value="v11.0" />
    10       </parameters>
    11     </defaultConnectionFactory>
    12     <providers>
    13       <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    14     </providers>
    15   </entityFramework>

    3.配置数据库连接字符串,这里要注意的是:name="AccountContext",数据库连接name的值要和前面上下文Context依赖的数据库连接名称保持一致。

    1 <connectionStrings>
    2     <add name="AccountContext" connectionString="Data Source=.;database=MVCDemo;uid=sa;pwd=sunfast;" providerName="System.Data.SqlClient"/>
    3   </connectionStrings>

     4.运行项目,将会自动创建数据库,数据库文件默认放在SQLSERVER的安装目录下,数据库中会多创建一张表[dbo].[__MigrationHistory]记录创建数据库的日志信息。

  • 相关阅读:
    MonkeyScript_API
    APP性能(Monkey)【启动时间、CPU、流量、电量、内存、FPS、过度渲染】
    adb基本命令 & Monkey发生随机事件命令及参数说明
    MonkeyRunner_API
    2021春招冲刺-1218 页面置换算法 | sort的原理 | 语义化标签 | 标签的继承
    2021春招冲刺-1217 线程与进程 | ES6语法 | h5新增标签
    2021春招冲刺-1216 死锁 | 箭头函数 | 内联元素 | 页面渲染
    【unity】旧世开发日志
    HTTP 与HTTPS 简单理解
    GET POST 区分
  • 原文地址:https://www.cnblogs.com/mora1988/p/5489791.html
Copyright © 2011-2022 走看看