你调用的对象是空的

时间:2011-08-30 15:03:44

标签: c# asp.net session

我在尝试排序时遇到错误。 对象引用未设置为对象的实例。

public static string SortColumn    
{
  get
    {
      return HttpContext.Current.Session["SORT_COLUMN"].ToString();
    }
    set
    {
        HttpContext.Current.Session["SORT_COLUMN"] = value;
    }
}

请帮助我...

2 个答案:

答案 0 :(得分:4)

Session["SORT_COLUMN"]可以返回null而您无法在 nothing 上调用某些内容,因此ToString会失败。

此外,HttpContext.Current可能会返回null,这意味着您无法访问Session - 如果您尝试从global.asax代码访问上下文,就会发生这种情况。< / p>

答案 1 :(得分:1)

在访问getter之前,必须初始化Session变量。否则你必须检查:

return HttpContext.Current.Session["SORT_COLUMN"] != null ? 
       HttpContext.Current.Session["SORT_COLUMN"].ToString() : string.Empty