c#sessions“对象引用未设置为对象的实例。”
我有一个ASHX文件:
你调用的对象是空的。
在线上:
HttpContext.Current.Session["loggedIn"] = true
这是我如何正确使用会话?
我猜这Session
是罪魁祸首; 在这里参考,你可能想尝试添加: IRequiresSessionState
到你的处理程序(ashx的代码隐藏)。 所以你应该有类似的东西:
public class Handler1 : IHttpHandler, System.Web.SessionState.IRequiresSessionState { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; context.Response.Write("Hello World"); context.Session["loggedIn"] = true; } public bool IsReusable { get { return false; } } }
还要注意,与传入的context
交谈更容易,但HttpContext.Current
应该工作。
默认情况下,ASHX处理程序没有会话信息。
查看此页面http://www.hanselman.com/blog/GettingSessionStateInHttpHandlersASHXFiles.aspx
IRequiresSessionState
- 如何在DataView.RowFilter中检查空白
- ASP.NET:在上载之前validation文件大小(宽度和高度)
- 设置ViewStateUserKey会给我一个“viewstate MAC failed的validation”错误
- 编写ASP.NET的月份和年份下拉列表的最佳方法是什么?
- dropdownlist DataTextField由属性组成?
- 在准备语句C#中使用SqlDBType.Decimal
- Membership.DeleteUser(UserName,true)不从角色中删除用户
- Twitter API仅应用程序身份validation(使用linq2twitter)
- 将图像转换为数据:image / png; base64用于网页disaplay