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. Unity3d嵌入web网页

    应用场景 程序中的界面风格 UI内容等相关内容需要很容易方便的跟新替换,不使用unity传统的热加载方式,也不想使用和H5等做混合APP的时候, 就用嵌入web来实现. 假如我想替换某个背景图,一般来 ...

  2. jQuery设置下拉框select 默认选中第一个option

    $("#id option:first").prop("selected", 'selected');

  3. Windows下Sqlplus中显示乱码

    set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK 如果想显示英文 Set nls_lang=american_america.zhs16gbk 注意,前提是 ...

  4. Linux 文件缓存 (二)

    close系统调用入口1. 首先来到系统调用入口,主要使用__close_fd进行了具体的处理过程,并没有耗时操作.(current->files表示进程当前打开文件表信息,fd为需要关闭的文件 ...

  5. JavaScript正则表达式检验手机号码、邮箱、ip地址等

    1)检测IP地址的正则表达式 ((2 [0-4] \d | 25[0-5] | [01]?\d\d?) \.){3}(2 [0-4] \d | 25[0-5] | [01]?\d\d?) 2 [0-4 ...

  6. 3D旋转效果

    <!doctype html><html lang="en"><head>    <meta charset="UTF-8&qu ...

  7. 黑客之google入侵网站常用方式 2

    一: 在搜索框上输入: “index of/ ” inurl:lib 再按搜索你将进入许多图书馆,并且一定能下载自己喜欢的书籍. 在搜索框上输入: “index of /” cnki 再按搜索你就可以 ...

  8. web百度地图离线开发

    公司现在做的一个项目本来用的是google离线地图,但是发现谷歌的地图数据很久没更新数据了,中国的城市发展这么快,好多地方地图和现实都对不上了. 发现百度地图数据更新挺快的(呵呵,毕竟是国产的吗),最 ...

  9. Spring Boot—10ModelAndView、Model,以及@ModelAttribute注解

    package com.sample.smartmap.controller; import org.springframework.beans.factory.annotation.Autowire ...

  10. Spring Boot—08Jackson处理JSON

    package com.sample.smartmap.controller; import java.io.IOException; import java.math.BigDecimal; imp ...