- 浏览: 1067858 次
- 性别:
- 来自: 长沙
文章分类
- 全部博客 (639)
- 服务器配置篇 (58)
- hibernate篇 (14)
- spring篇 (33)
- struts篇 (28)
- JS篇 (46)
- 其他技术篇 (46)
- 数据库集群配置 (6)
- JAVA基础相关 (48)
- 分布式框架HadHoop的应用 (2)
- FLEX篇 (8)
- SQLSERVER技术 (32)
- Android学习 (13)
- amchart学习笔记 (1)
- openfire+smark搭建即时通讯 (9)
- Linux学习 (18)
- Oracle数据库 (15)
- 网站优化技术 (12)
- mysql数据库 (2)
- 项目学习总结 (18)
- 工具类(JAVA) (12)
- 工具类(JS) (2)
- 设计模式 (10)
- Lucene学习 (24)
- EJB3学习 (6)
- Sphinx搜索引擎 (3)
- 工作中用到的软件小工具 (5)
- .NET (49)
- JAVA 连接SQLSERVER2008步骤 (1)
- MongoDB (19)
- Android手机开发 (3)
- Maven (6)
- vue (9)
- Shiro (4)
- mybatis (3)
- netty框架 (1)
- SpringCloud (3)
- spring-cloud (7)
- Git (1)
- dubbo (2)
- springboot (13)
- rocketmq (1)
- git学习 (2)
- kafka服务器 (2)
- linux (10)
- WEB系统辅助项目 (1)
- jenkins (2)
- docker (4)
- influxdb (3)
- python (2)
- nginx (1)
最新评论
-
jiangfuofu555:
这样数据量大,效率怎么样?
sqlserver 实现分页的前台代码 以及后台的sqlserver语句 -
w156445045:
博主请问下,如何做到实时的刷新呢,
另外我后台是Java 谢谢 ...
web 版本的汽车仪表盘,非常好看。还有各种图形 -
jackyin5918:
<transportConnector name=&qu ...
ActiveMQ的activemq.xml详细配置讲解 -
握着橄榄枝的人:
你这个不是spring1.x的吧
spring1.x使用AOP实例 -
xiaophai:
全乱套了!
openfire+spark搭建完美的及时通讯
简述:EF4.1包括Code First和DbContext API。DbContext API为EF提供更多的工作方式:Code First,Database First和Model First。
使用DbContext构造函数
1. Code First约定连接
namespace Magic.Unicorn
{
public class UnicornsContext : DbContext
{
public UnicornsContext()
// C# will call base class parameterless constructor by default
{
}
}
}
用Magic.Unicorn.UnicornsContext作为数据库名,在本机上生成该数据库的连接字符串(SQL Express)。
2. Code First指定数据库名称的约定连接
public class UnicornsContext : DbContext
{
public UnicornsContext()
: base("UnicornsDatabase")
{
}
}
用UnicornsDatabase作为数据库名,在本机上生成该数据库的连接字符串(SQL Express)。 3. Code First用配置文件中的连接字符串 <connectionStrings> public class UnicornsContext : DbContext 4. Database/Model First用配置文件中的连接字符 <add name="Northwind_Entities" public class NorthwindContext : DbContext 5. Defining sets on a derived context 1) DbSet属性:指定集合为Entity类型 2) IDbSet属性 3) 只读set属性 public IDbSet<Unicorn> Unicorns{get{return Set<Unicorn>();} 6. 利用主键查找实体 另一种插入方法: 在当前实体的关联实体中添加新的对象: 8. DbContext中的T-SQL查询
<add name="UnicornsCEDatabase"
providerName="System.Data.SqlServerCe.4.0"
connectionString="Data Source=Unicorns.sdf"/>
</connectionStrings>
{
public UnicornsContext()
: base("name=UnicornsCEDatabase")
{
}
}
connectionString="
metadata=res://*/Northwind.csdl|
res://*/Northwind.ssdl|
res://*/Northwind.msl;
provider=System.Data.SqlClient;
provider connection string=
"Data Source=.\sqlexpress;
Initial Catalog=Northwind;
Integrated Security=True;
MultipleActiveResultSets=True""
providerName="System.Data.EntityClient"/>
{
public NorthwindContext()
: base("name=Northwind_Entities")
{
}
}
DbSet的Find方法,如果用主键在上下文中查找不到实体,就会到数据库中查询。
1)通过主键查找实体
var unicorn=context.Unicorns.Find(3);//查询数据库
var unicornAgain=context.Unicorns.Find(3);//从当前上下文中返回相同的实例(没有查询数据库)
2) 通过主键和外键查找实体
var lady = context.LadiesInWaiting.Find(3, "The EF Castle");
7. 实体状态和保存
EntityState:Added、Unchanged、Modified、Deleted和Detached
1) 插入一个新的实体到上下文
当调用SaveChanges()才能插入到数据库中。
var unicorn = new Unicorn { Name = "Franky", PrincessId = 1};
context.Unicorns.Add(unicorn);//添加到上下文中
context.SaveChanges();//插入到数据库中
var unicorn = new Unicorn { Name = "Franky", PrincessId = 1};
context.Entry(unicorn).State = EntityState.Added;
context.SaveChanges();
// Add a new princess by setting a reference from a tracked unicorn
var unicorn = context.Unicorns.Find(1);
unicorn.Princess = new Princess { Name = "Belle" };
// Add a new unicorn by adding to the collection of a tracked princess
var princess = context.Princesses.Find(2);
princess.Unicorns.Add(new Unicorn { Name = "Franky" });
context.SaveChanges();
1) SQL语句查询实体
var unicorns = context.Unicorns.SqlQuery(
"select * from Unicorns").ToList();
2) SQL语句查询非实体类型
var unicornNames = context.Database.SqlQuery<string>(
"select Name from Unicorns").ToList();
3) 执行SQL命令
context.Database.ExecuteSqlCommand(
"update Unicorns set Name = 'Franky' where Name = 'Beepy'");
发表评论
-
C# WinForm程序如何与js交互
2012-07-15 22:28 2317一、建立网页 <html ... -
SQLITE FOR .NET4.0使用说明以及DLL
2012-06-28 22:07 1202SQLITE FOR .NET4.0使用说明以及DLL -
WinForm中TabControl的一些事件写法(C#)
2012-06-27 20:41 9877在TabControl控件中并没提供单个选项卡的Click事件 ... -
C# 通过字符串动态创建一个窗体
2012-06-27 20:27 1744private void button1_Click(obje ... -
vs2010 打包winform成EXE文件
2012-04-20 14:03 1643见附件 -
C#中DataGridView控件60招
2012-01-13 09:36 65571. DataGridView当前的单元格属性取得、变更 2 ... -
单击dataGridView某一行时将dataGridView当前选择行的某列值赋值给某个文本框
2012-01-13 09:19 2457SelectedRows和CurrentRow之间的区别 ... -
c# winform开发-datagridview开发
2012-01-13 09:18 1727datagridview 操作详解 目录: 1、 取得或 ... -
C# 中奇妙的函数. String Split 和 Join
2011-10-25 10:51 1110很多时候处理字符串数据,比如从文件中读取或者存入 - 我们可能 ... -
asp.net中web.config配置节点大全详解
2011-10-25 10:16 1372asp.net中web.config配置节点大全详解 2 ... -
Entity Framework in ASP.NET MVC Application (三)
2011-05-10 20:31 2467In the previous tutorial you im ... -
Entity Framework in ASP.NET MVC Application (二)
2011-05-10 20:29 1697In the previous tutorial you cr ... -
Entity Frame Work 4.1调用存储过程
2011-05-10 20:24 2134在这个问题上,琢磨了很久了。今天终于找到了调用的方法。 存储 ... -
entity-framework (code-first)实例开发(一)
2011-05-09 20:40 2751The Contoso University Web Appl ... -
使用ef4.1 的dbcontext进行数据库循环操作
2011-04-24 23:06 2263如果你想要调用一个类的方法进行循环操作:官方的例子: Dis ... -
ADO.NET 访问存储过程
2011-04-24 22:15 1590ADO.NET 访问存储过程其实也比较简单,但是有些小细节部分 ... -
JAVA与.NET的相互调用——通过Web服务实现相互调用(附原代码)
2011-04-24 20:58 1286JAVA与.NET是现今世界竞争激烈的两大开发媒体,两者语言有 ... -
视图模式/视图->视图包
2011-04-24 20:16 1472ASP.NET MVC(自V1起)就支持一个带控制器和视图的V ... -
SkipRequestValidation] –> [AllowHtml]
2011-04-24 20:15 1436ASP.NET MVC内置了防止HTML和跨站脚本注入攻击的支 ... -
Log4net 详细说明
2011-04-12 22:29 2071在实际项目中我们经常 ...
相关推荐
我们使用的开发环境是Visual Studio 2010,数据库为SQL Server 2005,且我们将利用EF4.1的自动代码生成功能来简化数据库操作。 首先,让我们了解MVC3和EF4.1的基础。ASP.NET MVC3是一个模型-视图-控制器(Model-...
【EF4.1发布说明】是关于Entity Framework 4.1的重要更新介绍,这是一个针对.NET Framework 4.0的数据库开发框架的重大改进版本。Entity Framework(简称EF)是由微软开发的面向对象的ORM(对象关系映射)工具,它...
本教程旨在帮助初学者理解并掌握 Entity Framework 4.1 (简称 EF4.1) 的 Code First 方法,这是一种灵活且易于使用的对象关系映射 (ORM) 技术。通过 Code First,开发者可以直接从实体类创建数据库模式,无需预先...
EF4.1有三种方式来进行数据操作及持久化。分别是Database-First,Model-First,Code-first,前面都已经简单介绍过了.下面简单小结一下
EF 4.1有哪些新玩新儿? 1. 首先当然是DbContext API,它是基于以前版本中的ObjectContext和其他一些类型抽象出的一个简单的API,针对常用开发场景和编程模式进行了优化。DbContext可以被于Database First, Model...
EF 使用教程 EF(Entity Framework)是一种对象关系映射(O/R Mapping)解决方案,由微软以 ADO.NET 为基础发展,现已经包含在 Visual Studio 2008 Service Pack 1 及 .NET Framework 3.5 Service Pack 1 中发布。...
在`MVC3+EF4_1学习系列`中,可能包含了一系列关于如何在MVC3项目中使用EF4.1的教程,包括基本的配置、数据库迁移、模型生成、数据库操作等。 `MusicStore`可能是一个示例应用,展示了如何在实际的MVC项目中结合EF...
在第四部分,教程通常会展示如何在已有的数据库上应用`DbContext`,这是EF 4.1引入的一个新特性,它比旧的ObjectContext更简洁、更易用。`DbContext`提供了对数据库操作的基本接口,包括添加、删除、查询和保存实体...
### EF4.1 CodeFirst 约定及配置详解 #### 一、默认约定 **1.1 模型约定** - **简单CLR类型:** 如`string`将默认映射为`nvarchar(128)`。 - **实体类型:** 定义业务逻辑的基本单元。 - **实体List集合:** 通常...
这是EF4.1引入的新特性,简化了开发流程。 2. **Database First**: 先有数据库,EF根据数据库创建模型,适合已有数据库的项目。 3. **Model First**: 从设计模型开始,然后生成数据库。这种方式强调模型在开发过程中...
EF 4.1版本引入了新的编码模式,使得开发者能够更简单高效地使用Entity Framework进行数据操作。在这个模式中,有几个核心的组件:DbContext、DbSet、ChangeTracker和验证API。 首先,DbContext是一个核心类,它...
在EF 4.1中,引入了"Code First"开发模式,开发者可以先定义实体类,然后由EF自动生成数据库结构。这种方式使得开发流程更加灵活,同时减少了数据库与业务逻辑之间的耦合。 **MySQL** MySQL是一种广泛使用的开源...
EF4.1引入了Code First开发模式,使得开发者可以直接通过C#类定义数据库结构,极大地提高了开发效率。在MvcBookStore案例中,我们可以看到如何使用EF来创建和管理数据库,以及如何通过DbContext进行数据查询和更新。...
在使用EF时,需要注意版本兼容性问题,例如EntityFramework41.exe可能是针对.NET Framework 4.1的版本。同时,License.rtf文件通常包含了软件的许可协议信息,确保在使用EF时遵守相关的授权条款。 总之,Entity ...
CodeFirst是EF4.1引入的新工作流,开发者首先创建.NET类和上下文,然后EF会根据这些类自动生成数据库。这种方式强调了代码的灵活性和版本控制。`EFDemo.CodeFirst.Test`可能包含针对CodeFirst模式的测试用例。 3. ...
3. **数据库迁移(Database Migrations)**:这是EF 4.1引入的一项功能,允许开发者在不丢失数据的情况下对数据库结构进行版本控制。当模型发生变化时,可以自动生成迁移脚本来更新数据库结构。 4. **仓储...
4. **ObjectContext和DbContext**:两者都是与数据库交互的主要接口,DbContext是ObjectContext的改进版,更适合EF4.1及更高版本。 5. **Auto-Mapping**:自动映射功能可以自动生成实体类和数据库之间的映射,简化...