在课堂中使用课程

时间:2011-01-31 19:45:16

标签: c# asp.net

我有使用会话变量的代码;它既在主页面代码中,也在一些aspx文件的代码中。我想将这段代码放在一个不同文件中的函数中但是当我这样做时,会话[“VariableName”]语句在单词session上以红色加下划线。我错过了什么?

感谢。

1 个答案:

答案 0 :(得分:6)

页面中的

SessionSystem.Web.UI.Page.Session。由于您的页面派生自Page类,因此您可以在没有资格的情况下引用它。

您的课程可能不是来自Page

在您的课程中,请改用HttpContext.Current.Session


布莱恩提出了一个很好的观点。通常,您的类代码可能不会在请求的上下文中被调用。始终先检查:

if (HttpContext.Current != null)
{
    if (HttpContext.Current.Session != null)
    {
        object cell = HttpContext.Current.Session["variable"];
        if (cell != null)
        {
            return (int) cell; // Or whatever
        }
    }
}
相关问题