机器人的HttpContext.Current为null

时间:2013-06-10 14:12:12

标签: c# asp.net c#-4.0

我在一个由.NET页面调用的类中有以下代码(在page_load事件期间为asp.net webforms):

public static bool BrowserSupportsJS
{
   get { return (HttpContext.Current.Session["js_support"] != null 
   && ((bool)HttpContext.Current.Session["js_support"]));
}

此行会引发任何机器人的异常:googlebot,bingbot等

例外是:对象引用未设置为对象的实例,并且它位于get访问器行上。它看起来像HttpContext.Current是null。

1 个答案:

答案 0 :(得分:3)

您应该Session查看null,如此:

public static bool BrowserSupportsJS
{
   get 
   { 
       if(HttpContext.Current.Session == null)
           return false;
       return (HttpContext.Current.Session["js_support"] != null 
           && ((bool)HttpContext.Current.Session["js_support"]));

   }
}