EF学习笔记(一)
EF(EntityFramwork)实体框架:主要是将实体类(EntityClass)和数据表(Table)进行映射(Map)。
EF核心对象:
- DbContext (数据访问核心对象)
 
DbContext的构造函数
- public EFContext()
 
连接的数据库名与类名相同,为EFContext,这是一种约定俗成
- public EFContext(): base("dbname")
 
连接的数据库名为传入的参数
- public UnicornsContext():base("name=dbname")
 
数据连接信息为webconfig中的connectionStrings节点下的为dbname的连接字符串
DbContext所有数据库实体和映射关系都要在DbContext进行注册
  public DbSet<School> Schools { get; set; }
        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            modelBuilder.Configurations.Add(new SchoolMap());
        }
- Database (数据库对象)
 
Database是通过EntityContext.Database进行访问的
DbCommand command = Database.Connection.CreateCommand();
command.Parameters.AddRange(parameters);
command.CommandType = CommandType.Text;
command.CommandText = query; if (Database.Connection.State != ConnectionState.Open) Database.Connection.Open(); using (command)
using (IDataReader reader = command.ExecuteReader(CommandBehavior.CloseConnection)) //当DataReader对象被释放掉以后,数据库连接会自动关闭
{
command.Parameters.Clear();
return new EntityDataTable(reader);
}
可以访问connection,并且可以dbcommand执行sql命令
Database.ExecuteSqlCommand(sql):执行sql语句,一般用户更新表
Database.SqlQuery<T>(sql)或Database.SqlQuery(sql):执行sql,并将执行结果返回成IEnumerable对象
DbSet<TEntity>
- DbSet<TEntity>(表对象)
 
Table.SqlQuery(sql):执行一段sql返回DbSqlQuery<TEntity>对象,可以.toList()成List<TEntity>
EF学习笔记(一)的更多相关文章
- EF学习笔记(十二):EF高级应用场景
		
学习总目录:ASP.NET MVC5 及 EF6 学习笔记 - (目录整理) 上篇链接:EF学习笔记(十一):实施继承 本篇原文链接:Advanced Entity Framework Scenari ...
 - EF学习笔记(十一):实施继承
		
学习总目录:ASP.NET MVC5 及 EF6 学习笔记 - (目录整理) 上篇链接:EF学习笔记(十) 处理并发 本篇原文链接:Implementing Inheritance 面向对象的世界里, ...
 - EF学习笔记(十) 处理并发
		
总目录:ASP.NET MVC5 及 EF6 学习笔记 - (目录整理) 上一篇:EF学习笔记(九):异步处理和存储过程 本篇原文链接:Handling Concurrency Concurrency ...
 - EF学习笔记(九):异步处理和存储过程
		
总目录:ASP.NET MVC5 及 EF6 学习笔记 - (目录整理) 上一篇:EF学习笔记(八):更新关联数据 本篇原文:Async and Stored Procedures 为何要采用异步? ...
 - EF学习笔记(八):更新关联数据
		
学习笔记主目录链接:ASP.NET MVC5 及 EF6 学习笔记 - (目录整理) 上一篇链接:EF学习笔记(七):读取关联数据 本篇原文链接:Updating Related Data 本篇主要考 ...
 - EF学习笔记(七):读取关联数据
		
总目录:ASP.NET MVC5 及 EF6 学习笔记 - (目录整理) 本篇参考原文链接:Reading Related Data 本章主要讲述加载显示关联数据: 数据加载分为以下三种 Lazy l ...
 - EF学习笔记-2 EF之支持复杂类型的实现
		
使用过.NET的小伙伴们知道,在我们的实体模型中,除了一些简单模型外,还有一些复杂类型,如几个简单的类型组合而成的类型:而EF除了在实现基本的增删改查之外,也支持复杂类型的实现. 那么如何手动构造复杂 ...
 - EF学习笔记-1 EF增删改查
		
首次接触Entity FrameWork,就感觉非常棒.它节省了我们以前写SQL语句的过程,同时也让我们更加的理解面向对象的编程思想.最近学习了EF的增删改查的过程,下面给大家分享使用EF对增删改查时 ...
 - EF学习 笔记-----EF映射
		
http://www.cnblogs.com/guomingfeng/archive/2013/06/15/mvc-ef-configuration-migration.html EF flountA ...
 - EF学习笔记——通用增删改查方案
		
http://blog.csdn.net/leftfist/article/details/25005307 我刚接触EF未久,还不知道它有什么强大之处,但看上去,EF提供了一般的增删改查功能.以往用 ...
 
随机推荐
- 获取AVCaptureSession samplebuffer 一像素的 rgb值
			
获取AVCaptureSession samplebuffer 一像素的 rgb值 typedef unsigned char byte; typedef struct RGBPixel{ byte ...
 - Nodejs环境变量
			
PATH,就是那个意思,没有特殊含义. NODE_PATH,将node_modules作为全局模块,多个安装目录用;分开.这样node在加载模块时首先会到项目目录下的node_modules目录加载相 ...
 - MFC Socket
			
目录 第1章同步TCP通讯 1 1.1 同步通讯与异步通讯 1 1.2 同步通讯类 1 1.3 同步TCP通讯客户端 4 1.3.1 界面 4 1.3.2 界面类声明 ...
 - phonegap插件加载与使用
			
有朋友问能不能在CanTK和AppBuilder开发的APP里发送UDP数据,HTML5里只能用HTTPS/HTTP/WebSocket几种通讯方式,要使用UDP需要通过phonegap打包成APK等 ...
 - 简单的css居中问题(日常记录)
			
1.今天遇到了一个奇怪的问题:因为网页要适配大小分辨屏幕,需要把一张图片放到div中,我的初始思路是把图放在div中绝对对位给top50%left50%,但是不行,因为当网页调窄时图片就因为显得太大了 ...
 - Xcode + Swift 制作动态原型
			
转载: Xcode + Swift 制作动态原型 为什么是 Xcode 和 Swift 我们尝试过的动态原型设计工具,Origami, Form, Hype, FramerJS,Pixate 等,但都 ...
 - 20145218 《Java程序设计》第05次实验报告
			
北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1452 指导教师:娄嘉鹏 实验名称:Java网络编程及安全 一.实验内容 1.掌握Socket程序的编写: 2.掌握密码技术的使 ...
 - 20145218 《Java程序设计》第六周学习总结
			
20145218 <Java程序设计>第六周学习总结 教材学习内容总结 第十章 输入/输出 10.1 InputStream与OutputStream 10.1.1 串流设计的概念 Jav ...
 - hdu----(2222)Keywords Search(ac自动机)
			
Keywords Search Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)T ...
 - cf--------(div1)1A. Theatre Square
			
A. Theatre Square time limit per test 2 seconds memory limit per test 64 megabytes input standard in ...