【EF映射】EF原理及延迟加载

  上一篇【EF映射】EF入门(一)中我们对EF有了简单的了解,接下来我们更加深入的去学习一下EF的原理以及怎么用lambda表达式去实现对数据库增删改等功能。

EF图解:


EF的核心思想:将表实体的变化,映射到表的变化;

    在ADO .NET中用于存取和管理资料的两个主要元件是.NET Framework 资料提供者和 DataSet,5大对象实现应用 程序和数据库之间的操作。而在EF中

    1.封装了数据库的统一入口,EF上下文;

    2.把对实体的操作放入上下文中;

    3.把对实体操作产生的变化生成Sql脚本执行到数据库中;

EF原理:

   跟踪实体的变化,然后根据映射关系以及实体的变化生成相应的sql脚本,并执行到数据库中去。

延迟加载

   再说延迟加载之前,我们先来了解一下Lambda表达式,C#的Lambda 表达式都使用 Lambda 运算符 =>,该运算符读为“goes to”。语法如下:
    形参列表=>函数体
函数体多于一条语句的可用大括号括起。

 第一种:

var items=from c in db.Customer
                 where c.ID<10
               select c ;
foreach(var customer in items)
{
      console.writer line(customer.ID);
}

第二种:
var customers=from c in db.Customer 
                        select c;
foreach(var cus in customers)
{
    console.writeLinez(cus.ID+"______");
   foreach( var order in cus.orfer)
  {
      console.writeLine(order.ID);
  }
   console.writeLine("______");
}
【总结】
   关于EF的学习,学好理论是前提,自己动手实践才能找到真正的去理解。我们要学习的东西还要很多,不要把知识独立起来,试着去构建知识网,把知识之间联系起来。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 34
    评论
评论 34
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值