asp.net 页面之间传递参数的几种方法 |
第一种方法: 复制代码 代码如下: protected void Button1_Click(object sender, EventArgs e) { Request.Redirect("Default2.aspx?username=honge"); } receive.aspx: 复制代码 代码如下: string username = Request.QueryString["username"];这样可以得到参数值 。 第二种方法: send.aspx 复制代码 代码如下: <form id="form1" runat="server" action="receive.aspx" method=post> <div> <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /> <asp:TextBox ID="username" runat="server"></asp:TextBox> </div> </form> receive.aspx 复制代码 代码如下: string username = Ruquest.Form["receive"]; 第三种方法: send.aspx: 复制代码 代码如下: protected void Button1_Click(object sender, EventArgs e) { Session["username"] = "honge"; Request.Redirect("Default2.aspx"); } \receive.aspx: 复制代码 代码如下: string username = Session["username"];这样可以得到参数值 。 第四种方法: send.aspx: 复制代码 代码如下: protected void Button1_Click(object sender, EventArgs e) { Application["username"] = "honge"; Request.Redirect("Default2.aspx"); } receive.aspx: 复制代码 代码如下: string username = Application["username"];这样可以得到参数值 。 第五种方法: send.aspx: 复制代码 代码如下: public string Name { get { return "honge"; } } protected void Button1_Click(object sender, EventArgs e) { Server.Transfer("Default2.aspx"); } receive.aspx: 复制代码 代码如下: send d = Context.Handler as send ; if (d != null) { Response.Write(d.Name);这样可以得到参数值 。 } 如果在asp.net 2.0中还可以这样用: 复制代码 代码如下: PreviousPage d = Context.Handler as PreviousPage ; if (d != null) { Response.Write(d.Name);这样可以得到参数值 。 } 也可以这样用: send.aspx: 复制代码 代码如下: <asp:Button ID="btnSubmit" runat="server" PostBackUrl="'/reveive.aspx" Text="Submit" /> receive.aspx: 复制代码 代码如下: <%@ PreviousPageType VirtualPath="'/Default.aspx" %> string name = PreviousPage.Name;这样可以得到参数值 。 补充:在datalist或repeater控件等数据绑定控件中 <a href="article.aspx?Id=<%#DataBinder.Eval(Container.DataItem,"article_Id") %>" target="_blank">//转到链接页面同时传参ID,ID为数据库中的字段; |