知识大全 ADO.NET Framework beta 3和Linq
Posted 知
篇首语:知识就是力量,时间就是生命。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ADO.NET Framework beta 3和Linq相关的知识,希望对你有一定的参考价值。
ADO.NET Framework beta 3和Linq 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
Linq to SQL内置缓存功能 简单的说 当你查询了一次某个键的数据后 再次查询时Linq to SQL的引擎不再向数据库发送SQL 例如
//下面是使用LinQ to SQL 的例子 context 是派生自System Data Linq DataContext的实例ErpLinQContextDataContext context = new ErpLinQContextDataContext();//SQLServer事件探查器拦截到SQL语句的执行//exec sp_executesql N SELECT TOP [t ] [emp_id] [t ] [fname]
[t ] [minit] [t ] [lname] // [t ] [job_id] [t ] [job_lvl]
[t ] [pub_id] [t ] [hire_date]//FROM [dbo] [employee] AS [t ]//WHERE [t ] [emp_id] = @p N @p varchar( ) @p = PMA M employee p = context employees First
而且 这两个实例是同一个实例
//返回的对象是同一个实例bool b = object ReferenceEquals(p p ); //=true;p lname = New Last Name ;bool b = (p lname == New Last Name ); //=true;
当然 如果你使用不同的Context实例查询时 缓存功能将实效
好 让我们再看看ADO NET Entity Framework beta
//pubsEntites是 ADO NET Entity Framework 的System Data Objects ObjectContext派生对象pubsEntities context = new pubsEntities();
//下面语句执行时 SQLServer事件探查器拦截到SQL的执行//SELECT TOP [Extent ] [emp_id] AS [emp_id] [Extent ] [fname] AS [fname]
[Extent ] [lname] AS [lname] // [Extent ] [hire_date] AS [hire_date] [Extent ] [job_id] AS
[job_id] [Extent ] [pub_id] AS [pub_id]//FROM [dbo] [employee] AS [Extent ]//WHERE N PMA M = [Extent ] [emp_id]Employee p = context EmployeeSet First
//SQLServer事件探查器 发现SQL再次被执行Employee p = context EmployeeSet First
测试的结果是 ADO NET Entity Framework(以下简称AEF)没有使用缓存 而是再次执行SQL 但是你要注意 两次查询的实例竟然是同一个
从Context功能上看 他肯定持有上次查询的结果 他没有使用缓存 我只能认为可能AEF被设计成三层应用 那么他很担心其他的进程将数据改了 所以不使用缓存 当发现数据并没有改后 还是使用原先的实例 这个想法对吗?
我们再看看另外一个代码
//如果使用不同的上下文更新的数据 pubsEntities context = new pubsEntities();Employee p = context EmployeeSet First
//旧的context再次查询时 Employee p = context EmployeeSet First
p LastName = New Last Name
难以置信 AEF重新执行了SQL 但是置新的更改而不闻 仍然返回旧的数据 这个算是Bug吗?
cha138/Article/program/net/201311/13995相关参考
知识大全 ADO.NET Entity Framework—并发
ADO.NETEntityFramework—并发 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 ADO.NET Entity Framework 试水——并发
ADO.NETEntityFramework试水——并发 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 ADO.NET Entity Framework 试水——并发[4]
ADO.NETEntityFramework试水——并发[4] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来
知识大全 ADO.NET Entity Framework 试水——并发[1]
ADO.NETEntityFramework试水——并发[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来
知识大全 ADO.NET Entity Framework 试水——并发[2]
ADO.NETEntityFramework试水——并发[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来
知识大全 ADO.NET Entity Framework 入门示例向导
ADO.NETEntityFramework入门示例向导 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
知识大全 ADO.NET Entity Framework存取数据库中图片
ADO.NETEntityFramework存取数据库中图片 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看
知识大全 详解ADO.NET Entity Framework 4中枚举的使用
详解ADO.NETEntityFramework4中枚举的使用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来
知识大全 ADO.NET Entity Framework存取数据库中的图片
ADO.NETEntityFramework存取数据库中的图片 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来
掌握ADO.NET的十个热门技巧[3] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 尽可能用预