黑马程序员技术交流社区
标题:
.NET 页面间传值的几种方法
[打印本页]
作者:
一片白
时间:
2014-4-30 15:08
标题:
.NET 页面间传值的几种方法
本帖最后由 一片白 于 2014-5-4 16:10 编辑
请问 B/S系统页面传值的方式 有几种?它们分别是什么哦?
作者:
许庭洲
时间:
2014-4-30 16:04
同一页面.aspx与.aspx.cs之间参数传递
1. .aspx.cs接收.aspx的参数:由于.aspx和.aspx.cs为继承关系,所以.aspx.cs可以直接对.aspx中的ID进行值提取,具体语句为string b = a.text; 其中a为.aspx中的文本框的ID;
2. .aspx接收.aspx.cs的变量:将.aspx.cs的变量设为全局变量,在.aspx中直接引用<%=a %>,这里a为.aspx.cs
中声明的全局变量;
不同页面之间的参数传递
1.URL传递参数方法,有两种方法:
第一种:
send.aspx
<a href=receive.aspx?a=b></a>
receive.aspx.cs
string c = Request.QueryString["a"];
第二种:
send.aspx.cs:
protected void Button1_Click(object sender, EventArgs e)
{
Request.Redirect("receive.aspx?a=b");
}
receive.aspx.cs:
string username = Request.QueryString["username"];
2. Form表单POST方法
send.aspx
<form id="form1" runat="server" action="receive.aspx" method=post>
<div>
<asp:Button ID="Button1" runat="server" Text="Button" />
<asp:TextBox ID="a" runat="server"></asp:TextBox>
</div>
</form>
receive.aspx.cs
string b = Ruquest.Form["a"];
3.通过session方法传递参数
优点: 1.使用简单,不仅能传递简单数据类型,还能传递对象。
2.数据量大小是不限制的。
缺点: 在Session变量存储大量的数据会消耗较多的服务器资源。
send.aspx.cs:
protected void Button1_Click(object sender, EventArgs e)
{
Session["username"] = "a";
Request.Redirect("receive.aspx");
}
receive.aspx:
string username = Session["username"];
作者:
嘴角上揚ぃ读不
时间:
2014-4-30 22:44
1.使用QueryString, 如....?id=1; response. Redirect()....
2.使用Session变量
3.使用Server.Transfer
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2