簡體   English   中英

Asp.Net查詢字符串

[英]Asp.Net Query String

我使用Querystring將值從一個頁面傳遞到另一個頁面。 我想使用Server.UrlDecode和urlEncode實現編碼和解碼。

查詢字符串返回空值,但我可以檢查值是否已在URL中發送。

這兩頁是:

QueryString.aspx

protected void Page_Load(object sender, EventArgs e)
{


}
protected void Button1_Click(object sender, EventArgs e)
{
    string id = "1";
    string name = "aaaa";

    string url = string.Format("QueryStringValuesTransfer.aspx?{0}&{1}", Server.UrlEncode(id), Server.UrlEncode(name));


    Response.Redirect(url);
}

;;

在另一頁:

QueryStringValuesTransfer.aspx:

 public partial class QueryStringValuesTransfer : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string id1 = Server.UrlDecode(Request.QueryString["id"]);
        string name1 = Server.UrlDecode(Request.QueryString["name"]);
        Response.Write(id1 + name1);

    }

}


我在id1和name1中得到空值。

任何幫助請..

改變這一行:

string url = string.Format("QueryStringValuesTransfer.aspx?id={0}&name={1}", Server.UrlEncode(id), Server.UrlEncode(name));

現在您只需在查詢字符串中設置值,您需要為它們分配名稱,以便您可以再次獲取它們:

string url = string.Format("QueryStringValuesTransfer.aspx?id={0}&name={1}", Server.UrlEncode(id), Server.UrlEncode(name));

那是因為你的查詢字符串應該是這樣的

MyPage.aspx?id=xxx&name=yyy

你沒有傳遞價值,只傳遞名字......

string url = string.Format("QueryStringValuesTransfer.aspx?{0}&{1}", Server.UrlEncode(id), Server.UrlEncode(name));

應該:

string url = string.Format("QueryStringValuesTransfer.aspx?id={0}&name={1}", Server.UrlEncode(id), Server.UrlEncode(name));

您沒有為值指定名稱。 你需要:

string url = string.Format("QueryStringValuesTransfer.aspx?id={0}&name={1}", Server.UrlEncode(id), Server.UrlEncode(name)); 

在第一頁中構建URL時,您應該這樣做:

string url = string.Format("QueryStringValuesTransfer.aspx?id={0}&name={1}", Server.UrlEncode(id), Server.UrlEncode(name));

查詢字符串由鍵值對組成,您應該提供鍵。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM