Entity Framework Codefirst的配置步骤:
 (1) 安装命令: install-package entityframework
 (2) 创建实体类,注意virtual关键字在导航属性中的用法
 (3) 创建DbContext类,为每个entity set创建一个DbSet;
    指定一个连接字符串构造函数中的 base("AccountContext") 。
    设置表的单数形式

 public class AccountContext:DbContext
{
public AccountContext():base("AccountContext") //web.config文件数据库连接字符串名称
{ } protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
//指定单数形式的表名
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
}

(4)在Web.config中配置Entity Framework
   配置连接字符串
(5)创建Initializer类, 使用EF初始化数据库,插入示例数据

public class AccountInitializer:DropCreateDatabaseIfModelChanges<AccountContext>
{
/// <summary>
/// 初始化数据库,需要在配置 文件中配置EnityFramework
/// </summary>
/// <param name="context"></param>
protected override void Seed(AccountContext context)
{
//初始化数据
var sysUsers = new List<SysUser>
{
new SysUser {UserName="Tom",Password="", Email="tom@accp.com" },
new SysUser() {UserName="Jerry", Password="",Email="Jerry@accp.com" }
};
sysUsers.ForEach(s => context.SysUsers.Add(s));
context.SaveChanges(); }
}

(6)修改web.config, 通知EF使用我们刚刚写好的initializer类

<entityFramework>
<!-- context 配置节中, type 的值对应 (context class的完整描述,程序集)
databaseInitializer 配置节中 , type 的值对应 (initializer class 的完整描述,程序集)-->
<contexts>
<context type="ResTest.DAL.AccountContext,ResTest">
<databaseInitializer type="ResTest.DAL.AccountInitializer,ResTest"></databaseInitializer>
</context>
</contexts>
</entityFramework>

至此 配置完成!

Entity Framework Codefirst的配置步骤的更多相关文章

  1. 第三篇:Entity Framework CodeFirst & Model 映射 续篇 EntityFramework Power Tools 工具使用

    上一篇 第二篇:Entity Framework CodeFirst & Model 映射 主要介绍以Fluent API来实作EntityFramework CodeFirst,得到了大家一 ...

  2. 第二篇:Entity Framework CodeFirst & Model 映射

    前一篇 第一篇:Entity Framework 简介 我有讲到,ORM 最关键的 Mapping,也提到了最早实现Mapping的技术,就是 特性 + 反射,那Entity Framework 实现 ...

  3. Entity Framework CodeFirst数据迁移

    前言 紧接着前面一篇博文Entity Framework CodeFirst尝试. 我们知道无论是“Database First”还是“Model First”当模型发生改变了都可以通过Visual ...

  4. entity framework codefirst 用户代码未处理DataException,InnerException基础提供程序在open上失败,数据库生成失败

    警告:这是一个入门级日志,如果你很了解CodeFirst,那请绕道 背景:这篇日志记录我使用Entity FrameWork CodeFirst时出现的错误和解决问题的过程,虽然有点曲折……勿喷 备注 ...

  5. ADO.NET Entity Framework CodeFirst 如何输出日志(EF 5.0)

    ADO.NET Entity Framework CodeFirst 如何输出日志(EF4.3) 用的EFProviderWrappers ,这个组件好久没有更新了,对于SQL执行日志的解决方案的需求 ...

  6. Entity Framework 关系约束配置

    前言 简单的说一下自己的理解,大家应该都很明白ADO.NET,也就是原生态的数据库操作,直接通过拼接SQL语句,表与表之间通过链接(inner join  left join  或者子查询),也就是在 ...

  7. Entity Framework Code-First(20):Migration

    Migration in Code-First: Entity framework Code-First had different database initialization strategie ...

  8. Entity Framework Code-First(15):Cascade Delete

    Cascade Delete in Entity Framework Code-First: Cascade delete automatically deletes dependent record ...

  9. Entity Framework Code-First(3):Setup Environment

    Setup Development Environment for EF Code-First: Let's setup the development environment for Code-Fi ...

随机推荐

  1. FZU Monthly-201906 tutorial

    FZU Monthly-201906 tutorial 题目(难度递增) easy easy-medium medium medium-hard hard 思维难度 AE B DG CF H A. X ...

  2. 日常开发中的shell小技巧

    工具推荐 命令行中很方便的代码统计工具---cloc 强大的分屏工具---tmux 最舒服的markdown书写工具---typora markdown图床推荐--七牛云 模拟生成熵(避免暴力手搓键盘 ...

  3. spring mvc中添加对Thymeleaf的支持

    一.下载Thymeleaf 官方下载地址:https://dl.bintray.com/thymeleaf/downloads/thymeleaf/ 我下载的是最新的3.0.11版本 把包里的jar包 ...

  4. x86 linux 支持的系统调用参数至多6个

    ebx ecx edx esi edi ebp

  5. Groovy sort() list

    https://www.w3cschool.cn/groovy/groovy_sort.html #Groovy sort()方法返回原始列表的排序副本. #句法List sort() #参数没有 # ...

  6. HTML5的服务器EventSource(server-sent event)发送事件

    参考资料: HTML5的服务器(server-sent event)发送事件有什么应用场景? W3school HTML 5 服务器发送事件 『后台消息推送功能』,前端除了轮询.scoket.第三方服 ...

  7. LocalDate/LocalDateTime/LocalTime与Date的互转

    // 01. java.util.Date --> java.time.LocalDateTime public void UDateToLocalDateTime() { java.util. ...

  8. Centos7.5 php7.2 安装pdo_sqlsrv 连接 sql server(转)

    Centos7.5 php7.2 安装pdo_sqlsrv 连接 sql server 转:https://blog.csdn.net/gdali/article/details/82912542   ...

  9. Operation之结合操作符

    startWith 该方法会在Observable序列开始之前插入一些事件元素. 即发生事件消息之前, 会发出这些预先插入的事件消息 Observable.of("2", &quo ...

  10. Python实用日期时间处理方法汇总

    这篇文章主要介绍了Python实用日期时间处理方法汇总,本文讲解了获取当前datetime.获取当天date.获取明天/前N天.获取当天开始和结束时间(00:00:00 23:59:59).获取两个d ...