EF配置,开发前的准备及步骤。

使用V22013和EF6.1。

1.使用VS新建MVC项目。

2.创建实体类。

3.配置web.config的数据库链接字符串。

<connectionStrings>
    <add name="SQLConnString" connectionString="Server=地址;Database=数据库名;integrated security=true;User Id=账户;Password=password" providerName="System.Data.SqlClient"/>
  </connectionStrings>

4.创建继承DbContex的上下本。并指定数据库。

public OrderDbContext(string “SQLConnString”) : base(“SQLConnString”)

5.DbContex映射数据库。

public DbSet<Order> Orders { get; set; }

6.DbContex配置字段限制条件。两种方式,一种是直接在OnModelCreating写。还有一种是单独写配置文件,建议另外一种。

protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            modelBuilder.Configurations.Add(new OrderConfig());
        }

7.编写配置文件OrderConfig。

 public class OrderConfig : EntityTypeConfiguration<Order>
    {
        public OrderConfig()
        {
            this.Property(o => o.Name).HasMaxLength(50);
            this.Property(o => o.Address).HasMaxLength(50);
        }
    }

8.初始化数据库。可配置策略。下一章介绍策略。

public OrderDbContext(string ConnectionString)
            : base(ConnectionString)
        {
            Database.SetInitializer<OrderDbContext>(new OrderInitializer());
        }

 public class OrderInitializer : CreateDatabaseIfNotExists<OrderDbContext>
    {
        protected override void Seed(OrderDbContext context)
        {

//唯一
            context.Database.ExecuteSqlCommand("CREATE UNIQUE INDEX IX_Order_Name ON Orders (Name)");
        }
    }

注意:仅仅要一调用OrderDbContext里面的方法,即生成数据库。

经验总结13--EF配置的更多相关文章

  1. 李洪强iOS开发本人集成环信的经验总结_02_基本配置

     李洪强iOS开发本人集成环信的经验总结_02_基本配置 来到APPdelegate中做一些配置 01 - 导入头文件 02 - 在didFinishLaunchingWithOptions用法总结 ...

  2. mysql 5.7.13 安装配置方法图文教程(win10) (转)

    http://www.jb51.net/article/87152.htm ***************************** MySQL是一款关系型数据库管理系统,是由Oracle旗下公司M ...

  3. hadoop生态搭建(3节点)-13.mongodb配置

    # 13.mongodb配置_副本集_认证授权# ==================================================================安装 mongod ...

  4. JUnit4.13环境配置

    Junit 4.13环境配置 JUnit是一个强大的单元测试工具.它可以针对某一个特定类的所有方法进行精确打击.这个东西具体怎么使用,留在以后说.这次给大家说说idea下配置JUnit环境的方法. 1 ...

  5. mysql 5.7.13 安装配置方法(linux)-后期部分运维

    mysql 5.7.13 安装配置方法图文教程(linux) 学习了:https://www.cnblogs.com/zhao1949/p/5947938.html /usr/local/mysql是 ...

  6. VSCode配置MSVC+VSCode使用easyx库,2021.5.13日配置

    VSCode配置MSVC+VSCode使用easyx库,2021.5.13日配置~~ 想必很多人和我一样,想用vscode编程c++,easyx库不支持MinGW,一般人都是直接使用vs2019安装e ...

  7. EF配置模型

    配置方法 EF里面的默认配置有两个方法,一个是用Data Annotations(在命名空间System.ComponentModel.DataAnnotations;),直接作用于类的属性上面,还有 ...

  8. EF 配置实现建表与迁移

    通过EF 作为操作数据库的工具有一段时间了,也做了几个相对不大的项目,慢慢的也对EF的使用摸索出来了一些规则,虽然说不是技术难点,但是,我说的是但是,能够提高我们开发效率的棉花糖有时我们还是必须要吃的 ...

  9. hive0.13.1配置hwi

    1 寻找hive-hwi-*.war文件 不清楚什么原因在hive0.13.1版本中的lib文件夹下没有hive-hwi-0.13.0.war,也就是没有*.war的文件. 所以用hive 0.12. ...

  10. 在IntelliJ IDEA 13中配置OpenCV的Java开发环境

    准备工作: 下载IDEA 13(这里以版本13为例,后面简称IDEA): 下载Java JDK(用于配置基本的Java开发环境): 下载OpenCV 2.4.9(这里以版本2.4.9为例,据这篇文章说 ...

随机推荐

  1. HDU 1016 S-Nim ----SG求值

    S-Nim Time Limit : 5000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Submiss ...

  2. Spring Boot的快速创建

    一.利用向导快速搭建Spring Boot应用 创建一个controller package com.hoje.springboot.Controller; import org.springfram ...

  3. JavaScript unshift()怎样添加数据的?

    var a = new Array(); a.unshift("red", "green"); a.unshift("black"); 这个 ...

  4. Qt架构图及模块分析介绍

    1.Qt框架图: 2.Qt模块组成 通用软件开发模块 QtCore 核心非图形接口类,为其他模块所调用 QtGui GUI(图形用户接口)功能模块 QtMultimedia 提供低级多媒体功能支持的类 ...

  5. autofac初识

    在开始autofac时,有必要先了解两个关键词:“控制反转(IoC/Inverse Of Control)”与“依赖注入(DI/Dependence injection)”. 控制反转(IoC):它把 ...

  6. CentOS7.4 + Hadoop2.7.5安装配置管理(伪分布式)

    1.  规划 1.1.  机器列表 NameNode SecondaryNameNode DataNodes 192.168.1.80 192.168.1.80 192.168.1.80 1.2.  ...

  7. Android Studio查看签名文件sha1和MD5的方法

    Android在生成了应用签名文件后,如果我们想要查看签名文件的sha1和md5,该怎么操作呢??下面我们来看看. 把android studio界面左下角的Terminal终端窗口打开,进入JDK的 ...

  8. okhttp3带cookie请求

    Request经常都要携带Cookie,上面说过request创建时可以通过header设置参数,Cookie也是参数之一.就像下面这样: Request request = new Request. ...

  9. HttpSession implements session

    体验 使用HttpSession进行会话管理,完全可以忽略HTTP无状态的事实. HttpSession会话管理原理 使用HttpSession进行会话管理十分方便,让Web应用程序看似可以“记得”浏 ...

  10. Python DDT(data driven tests)模块心得

    关于ddt模块的一些心得,主要是看官网的例子,加上一点自己的理解,官网地址:http://ddt.readthedocs.io/en/latest/example.html ddt(data driv ...