将数据从一页发送到另一页

2024-01-09

我正在尝试使用 C# ASP.Net 将表单数据从一个页面发送到另一个页面。我有两个页面default.aspx和default2.aspx。这是我在default.aspx中的代码:

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<br />
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<br />
<asp:Button ID="Button1" runat="server" Text="Go" 
    PostBackUrl="~/Default2.aspx" />
<br />

据我所知,到目前为止,PostBackUrl 用于设置您想要发送数据的页面,这是正确的吗?

另外,如何检索发送到 Default2.aspx 的数据?


你有几个选择,考虑一下

  1. 会话状态
  2. 请求参数

会话状态

如果你要在页面之间发送数据,你可以考虑使用会话状态 http://msdn.microsoft.com/en-us/library/ms178581(v=vs.100).aspx.

ASP.NET 会话状态使您能够存储和检索 用户在 Web 应用程序中导航 ASP.NET 页面。 HTTP 是 无状态协议。这意味着 Web 服务器会处理每个 HTTP 将页面请求作为独立请求。服务器不保留 了解先前请求期间使用的变量值。 ASP.NET 会话状态识别来自同一浏览器的请求 一个有限的时间窗口作为一个会话,并提供了一种持续的方法 该会话期间的变量值。默认情况下,ASP.NET 所有 ASP.NET 应用程序都启用会话状态。

最重要的是,这很容易!

将数据放入(例如在default1.aspx中)

Session["FirstName"] = FirstNameTextBox.Text;
Session["LastName"] = LastNameTextBox.Text;

把它拿出来(例如在default2.aspx上)

string firstname = Session["FirstName"] // value of FirstNameTextBox.Text;
string lastname = Session["LastName"] // value of LastNameTextBox.Text; 

请求参数

如果您发送少量数据(例如 id=4),则使用查询字符串变量可能更实用。

您应该探索查询字符串变量的使用,例如

http://www.domain.com?param1=data1&param2=data2

然后你可以像这样获取数据

string param1 = Request.QueryString["param1"]; // value will be data1
string param2 = Request.QueryString["param2"]; // value will be data2

你可以使用类似的东西如何测试 Request.QueryString[] 变量? https://stackoverflow.com/questions/349742/how-do-you-test-your-request-querystring-variables取出数据。

如果您不熟悉查询字符串变量,请查看他们的维基百科文章 http://en.wikipedia.org/wiki/Query_string

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将数据从一页发送到另一页 的相关文章

随机推荐