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. PowerDesigner应用01 逆向工程之配置数据源并导出PDM文件

    物理数据模型(Physical Data Model)PDM,提供了系统初始设计所需要的基础元素,以及相关元素之间的关系:数据库的物理设计阶段必须在此基础上进行详细的后台设计,包括数据库的存储过程.操 ...

  2. Google Dremel架构

    Dremel 是Google 的“交互式”数据分析系统.Google开发了Dremel将处理时间缩短到秒级,作为MapReduce的有力补充.Apache推出Dremel的开源实现Drill,将Dre ...

  3. Spring 中的事件机制

    说到事件机制,可能脑海中最先浮现的就是日常使用的各种 listener,listener去监听事件源,如果被监听的事件有变化就会通知listener,从而针对变化做相应的动作.这些listener是怎 ...

  4. idea2017显示maven Project菜单

    右侧就出现 maven project菜单了.

  5. CentOS 7.5 安装Oracle 11gR2 86%报错:Error in invoking target 'agent nmhs' of makefile

    解决方案: 不要关闭安装过程,另外打开终端窗口,将ins_emagent.mk文件中的 (MK_EMAGENT_NMECTL)更改为$(MK_EMAGENT_NMECTL) -lnnz11,然后在安装 ...

  6. Oracle 11g R2手动配置EM(转)

    转自:http://blog.itpub.net/9034054/viewspace-1973418/ Oracle 11g R2手动配置EM Oracle 作者:luashin 时间:2016-01 ...

  7. somatic mutation体细胞变异检测文献分享--转载

    转载 :http://blog.sina.com.cn/s/blog_83f77c940102xuro.html Kalatskaya I, Trinh Q M, Spears M, et al. I ...

  8. MongoDB开发深入之三:复制

    复制是基于操作日志oplog,相当于MySQL中的二进制日志,只记录发生改变的记录,复制是将主节点的oplog日志同步并应用到其他从节点的过程. 首先要理解两个概念:1.复制:提供冗余和高可用性:2. ...

  9. Superset配置mysql数据源

    1.添加mysql数据源 测试连接的时候遇到 No module named 'MySQLdb'" 安装mysqlclient pip install mysqlclient 如果遇到 ER ...

  10. java Random 带权重的随机选择

    实际场景中,经常要从多个选项中随机选择一个,不过,不同选项经常有不同的权重. /** * Created by xc on 2019/11/23 * 带权重的随机选择 */ public class ...