C# 访问类文件中的会话
我正在将一个项目升级到新版本的Visual Studio、.Net Framework和我们的应用程序母版页。不幸的是,在执行此操作时,某些代码不再有效 在我的default.aspx.cs页面上,我正在设置一个会话变量: 会话[“用户”]=sUser 我需要访问security.cs文件(不是代码隐藏)中的此会话变量。不幸的是,每次我尝试访问以下内容时: 字符串sUser=HttpContext.Current.Session[“user”].ToString() 我收到一个“'HttpContext.Current.Session[“user”]”引发了“System.NullReferenceException”类型的异常错误 我知道,从设计上讲,类文件不能访问会话,但我希望有某种方法可以访问它,以节省大量工作。如果我无法访问会话,我将需要更改大量代码,以便将用户传递到一堆类文件中。如果我能以某种方式使用session(或在default.aspx.cs文件的page_load中设置的其他方法),更改将非常小C# 访问类文件中的会话,c#,session-variables,session-state,C#,Session Variables,Session State,我正在将一个项目升级到新版本的Visual Studio、.Net Framework和我们的应用程序母版页。不幸的是,在执行此操作时,某些代码不再有效 在我的default.aspx.cs页面上,我正在设置一个会话变量: 会话[“用户”]=sUser 我需要访问security.cs文件(不是代码隐藏)中的此会话变量。不幸的是,每次我尝试访问以下内容时: 字符串sUser=HttpContext.Current.Session[“user”].ToString() 我收到一个“'HttpCon
有什么办法可以让这一切顺利吗 谢谢大家的帮助。你帮我找到了答案。以下是我需要的解决方案:
是否为
HttpContext
null
?或者它是当前的HttpContext?或者是HttpContext.Session
?是在web请求的上下文中执行Security.cs
代码?或者可能来自一个新的线程或任务?如果您能够提供一个.HttpContext.Current确实有效,并且类正在参与一个当前请求,那就太棒了。在您的示例中,您正在一行中完成http上下文会话对象的ToString()。要帮助查看发生了什么,请将其分为四行(获取当前上下文,然后获取会话,然后从会话中获取“user”对象,然后执行ToString()操作)。这可能会给你一些线索,让你知道这并没有达到你所期望的效果