我们可以使用Response.Redirect重定向到其他应用程序的页面

时间:2013-02-08 07:13:58

标签: c# asp.net

我正在使用3.5framework中的两个asp.net webproject。

我已经使用Response.Redirect重定向到其他页面,使用查询字符串传递数据,它在同一个应用程序中工作正常,但是当我重定向到其他应用程序时,它给了我一个错误。 代码:

(同一项目的工作代码)

Response.Redirect("confirm_book.aspx?Data=" + Server.UrlEncode(txtfname.Text) + "&Data1=" + Server.UrlEncode(txtlname.Text));

(而不是在重定向到其他网站时使用代码)

Response.Redirect("http://abc.com/confirm_book.aspx?Data=" + Server.UrlEncode(txtfname.Text) + "&Data1=" + Server.UrlEncode(txtlname.Text));

(在confirm_book.aspx页面加载事件上)

string fname=Request.QueryString["Data"];
string lname=Request.QueryString["Data1"];

2 个答案:

答案 0 :(得分:2)

确定您可以重定向到另一个应用程序。您需要指定绝对地址:

Response.Redirect("http://www.example.com/foo.aspx?Data=" + Server.UrlEncode(txtfname.Text));

答案 1 :(得分:0)

你能把你重定向的应用程序的Page_Load的代码放到哪里吗?

我认为您正在尝试从URL中获取不存在的QueryString或NULL值。 您可能想先检查QueryString的值是否为NULL

if (Request.QueryString["Data"] != null){

string fname=Request.QueryString["Data"];
// do your logic here !
} else {
// the value is NULL , do error logic here
}

并使用每个QueryString进行此操作。