我有两个不同的Web应用程序,我想知道如何将数据从第一个Web应用程序发送到第二个Web应用程序,就像在第一个Web应用程序的文本框上写下我的名字并在第二个Web应用程序的标签上显示我的名字一样。我已经看到了一些带有responsee.redirect,会话变量,cookie,应用程序状态和server.transfer的代码,但是它总是将数据发送到同一项目中的其他页面。反正我可以使用吗?我在C#中使用ASP.Net。
好吧..我做到了。对我有用
网路应用程式1
protected void buttonPassValue_Click(object sender, EventArgs e)
{
Response.Redirect("http://localhost:57401/WebForm1.aspx?Name=" +
this.txtFirstName.Text + "&LastName=" +
this.txtLastName.Text); }
网络应用2
public void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
this.lblname.Text = Request.QueryString["Name"];
this.lbllastname.Text = Request.QueryString["Lastname"]; }
最佳答案
使用Get
方法发送查询字符串中的数据,然后在接收页面上从中提取值。
如果需要保护数据,请使用POST
方法。使用WebClient
生成请求到URL。在接收页面上,从POST
变量中提取数据并显示在label
上。
POST方法示例:(请求)
using (var client = new WebClient())
{
var values = new NameValueCollection();
values["name"] = "Name";
values["username"] = "username";
var response = client.UploadValues("url of page", values);
var responseString = Encoding.Default.GetString(response);
}
从POST读取数据:(在目标页面上)
NameValueCollection postData = Request.Form;
string name, username;
if (!string.IsNullOrEmpty(postData["name"]))
{
name = postData["name"];
}
if (!string.IsNullOrEmpty(postData["username"]))
{
username = postData["username"];
}