页面之间的值传递方式有很多,由于最近有用到,所以学习了一下,以下记录:
1.QueryString方法:
参数传递通过页面重定向:Response.Redirect("End.aspx?参数名=参数值");
在新页面参数的获取方式:string 字符名=Request.QueryString["传递的参数名"];
2.POST方法:
参数获取:string 字符名=Request.Form["传递的参数名"];
3.Session方法:
Session方法用于保存短时间内的信息,它有有效期。
赋值参数:Session["传递的参数名"]=传递的数据;
获取参数:string 字符名=Session["传递的参数名"];
4.Application方法:
Application方法在不使用的时候需要给它显示清除,以Application["传递的参数名"]=null;的方式
赋值参数:Application["传递的参数名"]=传递的数据;
获取参数:string 字符名=Application["传递的参数名"];
5.ViewState方法:
赋值参数:ViewState["传递的参数名"]=传递的数据;
获取参数:string 字符名=ViewState["传递的参数名"];
6.Cookie方法:
并不是所有浏览器都支持Cookie,并且可以被用户删除,所以Cookie不能保存重要的信息。
赋值参数:Response.Cookie["传递的参数名"]=传递的数据;
获取参数:string 字符名=Request.Cookie["传递的参数名"];
7.使用Server.Transfer方法:
该方法通过Server.Transfer方法把执行流程从当前的aspx页面转到同一服务器上的另一个aspx页面的同时,可保留表单数据或查询字符串。
参数传递:Server.Transfer("End.aspx",true);(第二个参数必须设置为true才有效)
在新页面参数的获取方式:string 字符名=Request.Form["传递的参数名"];或者string 字符名=Request.QueryString["传递的参数名"];
例如:
Page FirstPage;
FirstPage=(Page)Context.Handler;
Response.Write(FirstPage.Name);