Entity Framework Codefirst的配置步骤
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的配置步骤的更多相关文章
- 第三篇:Entity Framework CodeFirst & Model 映射 续篇 EntityFramework Power Tools 工具使用
上一篇 第二篇:Entity Framework CodeFirst & Model 映射 主要介绍以Fluent API来实作EntityFramework CodeFirst,得到了大家一 ...
- 第二篇:Entity Framework CodeFirst & Model 映射
前一篇 第一篇:Entity Framework 简介 我有讲到,ORM 最关键的 Mapping,也提到了最早实现Mapping的技术,就是 特性 + 反射,那Entity Framework 实现 ...
- Entity Framework CodeFirst数据迁移
前言 紧接着前面一篇博文Entity Framework CodeFirst尝试. 我们知道无论是“Database First”还是“Model First”当模型发生改变了都可以通过Visual ...
- entity framework codefirst 用户代码未处理DataException,InnerException基础提供程序在open上失败,数据库生成失败
警告:这是一个入门级日志,如果你很了解CodeFirst,那请绕道 背景:这篇日志记录我使用Entity FrameWork CodeFirst时出现的错误和解决问题的过程,虽然有点曲折……勿喷 备注 ...
- ADO.NET Entity Framework CodeFirst 如何输出日志(EF 5.0)
ADO.NET Entity Framework CodeFirst 如何输出日志(EF4.3) 用的EFProviderWrappers ,这个组件好久没有更新了,对于SQL执行日志的解决方案的需求 ...
- Entity Framework 关系约束配置
前言 简单的说一下自己的理解,大家应该都很明白ADO.NET,也就是原生态的数据库操作,直接通过拼接SQL语句,表与表之间通过链接(inner join left join 或者子查询),也就是在 ...
- Entity Framework Code-First(20):Migration
Migration in Code-First: Entity framework Code-First had different database initialization strategie ...
- Entity Framework Code-First(15):Cascade Delete
Cascade Delete in Entity Framework Code-First: Cascade delete automatically deletes dependent record ...
- Entity Framework Code-First(3):Setup Environment
Setup Development Environment for EF Code-First: Let's setup the development environment for Code-Fi ...
随机推荐
- 某邀请赛misc key阉割发行版
目录 题目下载 提示 解题过程 1.提取RGB值 2.找到key 3.循环异或,得到flag 反思 题目下载 题目名:key 提示 提取钥匙中特殊颜色的RGB循环异或KEY值 解题过程 1.提取RGB ...
- 图上的并行处理 Parallel Processing of Graphs
Graph 本次学术前沿讲座由邵斌老师主讲,标题已经揭示了主题:Graph.1.5h的talk,听完自觉意犹未尽.本来以为是一节自己没接触过的图形学的talk,没想到讲的很多内容都跟自己学过的很多东西 ...
- 【Beta】Scrum meeting 10
目录 写在前面 进度情况 任务进度表 Beta-1阶段燃尽图 遇到的困难 照片 commit记录截图 后端代码 前端代码 技术博客 写在前面 例会时间:5.14 22:30-22:45 例会地点:微信 ...
- Seq2Seq模型 与 Attention 策略
Seq2Seq模型 传统的机器翻译的方法往往是基于单词与短语的统计,以及复杂的语法结构来完成的.基于序列的方式,可以看成两步,分别是 Encoder 与 Decoder,Encoder 阶段就是将输入 ...
- SpringMVC request 得到文件路径
1.java中的路径 File directory = new File("abc"); // 对于getCanonicalPath()函数,“."就表示当前的文件夹,而 ...
- Centos7安装完成后设定基本的网络配置
Centos7设定网络 新安装的centos7,网络默认是不启动的,需要人为的手工修改配置文件,在这里把这个过程简要的记录一下. 设定ip地址与mac地址自定义 [root@web ~]# cd /e ...
- Springboot配置连接两个数据库
背景: 项目中需要从两个不同的数据库查询数据,之前实现方法是:springboot配置连接一个数据源,另一个使用jdbc代码连接. 为了改进,现在使用SpringBoot配置连接两个数据源 实现效果: ...
- jzy3D从入门到弃坑_2使用jzy3D0.9画2D散点图
jzy3D从入门到弃坑_2 使用jzy3D0.9画2D散点图 觉得有用的话,欢迎一起讨论相互学习~Follow Me 在上一节中安装jzy3D 0.9版本并且运行了3D的例子 https://blog ...
- Classic BAdi and New BAdi
Former Member Classic BAdi and New BAdi ... 2007年04月27日 04:43 | 1.5k Views Hi all, I have a question ...
- javascript中var、let、const的区别
这几天修改别人的js,发现声明变量有的用var,有的用let,那它们有什么区别呢? javascript中声明变量的方式有:var.let.const 1.var (1)作用域: 整个函数范围内,或者 ...