2012-04-30 40 views
-2

我正在一个错误在这行代码Session.Linq<Employees>()对象引用不设置为一个对象的一个​​实例在会话

“的对象引用需要非静态字段,方法或属性” System.Web.UI.Page.Session.get”

这是我的代码:

public static object GetData(Dictionary<string, object> tableParams) 
     { 
      IQueryable<Employees> Employee = Session.Linq<Employees>(); 
      if (tableParams.ContainsKey("sEcho")) 
      { 
       var parser = new DataTableParser<Employees>(tableParams, Employee); 
       return parser.Parse(); 
      } 
      return Employee; 
     } 

如果我使用HttpContext.Current.Session.Linq<Employees>(); 然后灌胃等:

“System.Web.SessionState.HttpSessionState”不包含关于“的LINQ”的定义和没有扩展方法“的LINQ”接受类型“System.Web.SessionState.HttpSessionState”的第一个参数可以是发现'

我需要做些什么才能使这个工作?我是否缺少Linq关于Session的命名空间?我正在使用System.LinqSystem.Linq.Expression

+0

什么是'Linq的()'? – jrummell

+1

@ jrummell有点像'Cup ' – mattytommo

回答

0

我认为你误解了一些东西。你试图做的事情与Linq没有任何关系,至少在没有从会话中检索对象的情况下。

您需要从会议检索对象和拆箱它:

var list = Session["MyList"] as List<int>; 
if (list != null) 
{ 
    //the list was found and you can start using it here 
} 
相关问题