我在ASP.NET web应用程序中遇到了与会话状态有关的奇怪异常。注:该代码是由第三方制造....ASP.NET会话状态
基本上我得到一个HttpException用的描述:
时enableSessionState设置为true时才能使用会话状态,无论是在配置文件或在Page指令中。请确保System.Web.SessionStateModule或自定义会话状态模块包含在应用程序配置的\\部分中。
失败发生看上去像这样的代码:
public class ExtendedWebPage : System.Web.UI.Page
{
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
if (Context.Session != null)
{
if (Session.IsNewSession || Session["UserID"] == null) <--- Errors Here
{
我得到的if语句的测试例外,但是当我询问Context.Session的罚款。到目前为止,浏览器已经通过了一个很好的登录页面,并设置了一些Session变量,我可以看到Context.Session,但是这个.Session正在抛出这个exeption。
任何想法?
感谢,
菲利普
我觉得这里的问题是Context.Session和Session不是一回事。 – 2011-01-12 09:50:06
我很欣赏Session是一个在Page内定义的虚拟属性,然而Session属性使用Context.Session,并且如果底层字段_session为空则返回异常。 – Philip 2011-01-12 10:04:20