MCV EF 新手求助!!!!

Zz254274638 2014-02-10 08:02:55
用EF 不管写什么代码用SQL Server Profiler 查看都是:


SELECT
[Extent1].[Id] AS [Id],
[Extent1].[ClassId] AS [ClassId],
[Extent1].[Name] AS [Name],
[Extent1].[Author] AS [Author],
[Extent1].[Introduction] AS [Introduction],
[Extent1].[UpDateName] AS [UpDateName],
[Extent1].[WordTotal] AS [WordTotal],
[Extent1].[Collection] AS [Collection],
[Extent1].[Click] AS [Click],
[Extent1].[Recommend] AS [Recommend],
[Extent1].[State] AS [State],
[Extent1].[BigIMG] AS [BigIMG],
[Extent1].[SmallIMG] AS [SmallIMG]
FROM [dbo].[Book] AS [Extent1]

这样的一句话

C# 代码(只要查询就是上面的代码!!!使用CallContext,如果用EF的上下文就没有着中情况!难道这就是传说中的缓存???求高手解答!!)

/// <summary>
/// 实现对EF上下文实例进行管理,保证线程内唯一
/// </summary>
/// <returns></returns>
public static ObjectContext GetCurrentDbContext()
{
//CallContext 是类似于方法调用的线程本地存储区的专用集合对象,并提供对每个逻辑执行线程都唯一的数据槽。 数据槽不在其他逻辑线程上的调用上下文之间共享。 当 CallContext 沿执行代码路径往返传播并且由该路径中的各个对象检查时,可将对象添加到其中。

//当对另一个 AppDomain 中的对象进行远程方法调用时,CallContext 类将生成一个与该远程调用一起传播的 LogicalCallContext 实例。 只有公开 ILogicalThreadAffinative 接口并存储在 CallContext 中的对象被在 LogicalCallContext 中传播到 AppDomain 外部。 不支持此接口的对象不在 LogicalCallContext 实例中与远程方法调用一起传输。
ObjectContext context = (ObjectContext)CallContext.GetData("DbContext");

if (context == null)
{
context = new NovelEntities();

CallContext.SetData("DbContext", context);
}

return context;
}

//book.GetModelOrderBy 方法
public IQueryable<T> GetModelOrderBy(Func<T, int?> OrderByLambda)
{
return _con.CreateObjectSet<T>().OrderBy<T, int?>(OrderByLambda).AsQueryable();
}

book.GetModelOrderBy(p => p.Click).Skip(10).ToList();


...全文
118 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Zz254274638 2014-02-10
  • 打赏
  • 举报
回复
http://www.cnblogs.com/dudu/archive/2012/04/01/enitity_framework_func.html 哈哈我找到了!!!谢谢!!
Zz254274638 2014-02-10
  • 打赏
  • 举报
回复
引用 2 楼 caozhy 的回复:
AsQueryable()这个基本属于掩耳盗铃
Why??
threenewbee 2014-02-10
  • 打赏
  • 举报
回复
AsQueryable()这个基本属于掩耳盗铃
threenewbee 2014-02-10
  • 打赏
  • 举报
回复
public IQueryable<T> GetModelOrderBy(Expression<Func<T, int?>> OrderByLambda)

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧