一:最普通的数据库操作

static void Main(string[] args)
{
using (SchoolDBEntities db = new SchoolDBEntities())
{
db.Students.Add(new Student() { StudentName = "nihao" });

db.SaveChanges();
}
}

domain 和 db 是怎么操作。。。

DbSet<Student> 集合 【用于存放集合】 从名称中可以看出,是一个叫做Student Set的一个集合。。

可以看出,是一个叫做实体的仓库。。。

SaveChanges() 模式提交,会从两个仓储中获取添加的domain entity,然后整体性的提交数据库。。。

执行操作之前,会开启一个transaction。。。两条insert之后, commit transction。。

UI

BLL

DAL

DBSet => Repository

DbContext => unitofwork

//
// 摘要:
// Interface implemented by objects that can provide an System.Data.Entity.Infrastructure.IObjectContextAdapter.ObjectContext
// instance. The System.Data.Entity.DbContext class implements this interface to
// provide access to the underlying ObjectContext.
public interface IObjectContextAdapter
{
//
// 摘要:
// Gets the object context.
ObjectContext ObjectContext { get; }
}

我们在ef4.0,4.1的时候,用的都是objectContext。。。 code first出现之后,都用DBContext进行了封装。。。

最新文章

  1. 在jexus下如何简单的配置多站点
  2. 实例讲解Nginx下的rewrite规则
  3. 【 D3.js 选择集与数据详解 — 2 】 使用data()绑定数据
  4. 使用普通Windows服务创建Quartz.Net服务项目
  5. UVA 11384 Help is needed for Dexter(问题转化 递归)
  6. 在ubuntu 10.04下编译ffmpeg
  7. SQLserver查询数据类型为ntext是空或NULL值的方法
  8. POJ1182 食物链 【并查集变种】
  9. 关于LCD的分屏与切屏 Tearing effect
  10. android模拟器网络设置(局域网)
  11. 《Android进阶》之第四篇 ViewPagerIndicator的使用
  12. 跨站请求伪造攻击 CSRF
  13. VS2015调试ArcMap Add-in插件提示尝试运行项目时出错,无法启动程序“路径\arcmap.exe”
  14. Spring Boot实现热部署
  15. item 5: 比起显式的类型声明,更偏爱auto
  16. Linq测试/查看工具——LinqPad
  17. Leetcode 124 *
  18. spket插件安装并设置JQuery自动提示(转)
  19. TCP三次握手,四次分手
  20. Hexo Next配置百度分享、加入动态背景、接入网页在线联系功能、页脚增加统计功能、添加gitment、添加热度、阅读量排行

热门文章

  1. 深入浅出 Java Concurrency (15): 锁机制 part 10 锁的一些其它问题
  2. python开发_python中字符串string操作
  3. letter
  4. C# Data Parse
  5. yarn学习
  6. 利用 Django admin 完成更多任务(转)
  7. Django中多种重定向方法使用
  8. 通过devtools在centos系统中启用高版本的gcc
  9. golang怎么使用redis,最基础的有效的方法
  10. 使用Cloudrea Manager在CDH集群中添加kafka服务节点,更改borker.id配置后无法启动