如何在asp.net中将会话值从第2页传递到第1页?
我在第1页上有一个列表框和按钮,当我单击按钮时,第2页将在一个新选项卡中打开。在第2页中,我将照片上传到一个文件夹,并设置会话[“FileName”]值。我想当我关闭第2页时,上传图像的名称显示在列表框中 注意:会话[“文件名”]=上载图像的名称 有人有主意吗?请帮帮我 多谢各位 我的上传类:如何在asp.net中将会话值从第2页传递到第1页?,asp.net,session,file-upload,listbox,Asp.net,Session,File Upload,Listbox,我在第1页上有一个列表框和按钮,当我单击按钮时,第2页将在一个新选项卡中打开。在第2页中,我将照片上传到一个文件夹,并设置会话[“FileName”]值。我想当我关闭第2页时,上传图像的名称显示在列表框中 注意:会话[“文件名”]=上载图像的名称 有人有主意吗?请帮帮我 多谢各位 我的上传类: public void ProcessRequest(HttpContext context) { if (context.Request.Files.Count > 0)
public void ProcessRequest(HttpContext context)
{
if (context.Request.Files.Count > 0)
{
// get the applications path
string uploadPath = context.Server.MapPath(context.Request.ApplicationPath + "/Temp");
for (int j = 0; j <= context.Request.Files.Count - 1; j++)
{
// loop through all the uploaded files
// get the current file
HttpPostedFile uploadFile = context.Request.Files[j];
// if there was a file uploded
if (uploadFile.ContentLength > 0)
{
context.Session["FileName"] = context.Session["FileName"].ToString() + uploadFile.FileName+",";
uploadFile.SaveAs(Path.Combine(uploadPath, uploadFile.FileName));
}
}
}
// Used as a fix for a bug in mac flash player that makes the
// onComplete event not fire
HttpContext.Current.Response.Write(" ");
}
public void ProcessRequest(HttpContext上下文)
{
如果(context.Request.Files.Count>0)
{
//获取应用程序路径
字符串uploadPath=context.Server.MapPath(context.Request.ApplicationPath+“/Temp”);
对于(int j=0;j 0)
{
context.Session[“FileName”]=context.Session[“FileName”].ToString()+uploadFile.FileName+;
SaveAs(Path.Combine(uploadPath,uploadFile.FileName));
}
}
}
//用于修复mac flash player中的错误,该错误使
//未完成事件未触发
HttpContext.Current.Response.Write(“”);
}
会话是ASP.NET中的服务器对象。这意味着,当您在一个页面上创建会话时,您可以在任何其他页面上使用它,只要会话对象未被删除或过期
假设您在page1.aspx.cs上执行了此操作
Session["FileName"] = "file1";
然后您可以在page2.aspx.cs上访问它,如下所示:
if(Session["FileName"]!=null)
Label1.Text = (string)Session["FileName"]
因此,您只能在.aspx页或控件派生类上访问会话变量
如果要访问类库项目中的会话变量,请执行以下操作:
HttpContext.Current.Session["FileName"]
另外,看起来您已经创建了一个自定义的HttpModule
请注意,HTTPModule不能处理初始化会话状态之前发生的任何管道事件
要了解更多关于如何以及何时访问HttpModule中的会话变量的信息,请在关闭page2后,或不要打开第二页,然后从一页开始执行所有操作。如果可能,我希望可以通过Javascript完成。我不认为这是asp.net特有的问题。也许这会给你指明正确的方向谢谢Twentygotton。那真是帮了大忙。那就请大家踊跃投票吧;)亲爱的曼尼什·米什拉。谢谢你的帮助,但我有两页。第2页将在新选项卡中打开,在第2页中,我将上载照片,当我关闭第2页时,我希望会话值显示在第1页的列表框中。请帮助。@MortezaKarimi在这种情况下,您必须刷新页面1。只有这样,它才会知道创建的新会话变量。打开弹出窗口或模型对话框,而不是打开新选项卡。那样会容易得多