我想在.ashx文件中访问一些值(已在.aspx文件中设置)。我尝试使用查询字符串,会话等获取该值,但每次失败。任何人都可以建议我如何在.ashx文件中访问会话值?
答案 0 :(得分:62)
在ashx.cs文件中,还要“实现”界面System.Web.SessionState.IReadOnlySessionState
或System.Web.SessionState.IRequiresSessionState
。
您不必实现任何方法,只需存在此方法即可通过context.Session
使会话可用(在只读或读/写模式下)。
标题如下:
public class MyHandler: IHttpHandler, System.Web.SessionState.IReadOnlySessionState
答案 1 :(得分:49)
在aspx文件中:
Session.Add("filename", "Test.txt");
在aspx文件中设置会话值后。使用以下命令获取ashx文件中的值。
在ashx文件中:
public class ImageHandler : IHttpHandler, System.Web.SessionState.IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
string Name = "";
if (context.Session["filename"] != null)
Name = context.Session["filename"].ToString();
}
}
答案 2 :(得分:-1)
试试这个,
HttpContext.Current.Session