Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Asp.Net查询字符串_C#_Asp.net_String_Encoding - Fatal编程技术网

C# Asp.Net查询字符串

C# Asp.Net查询字符串,c#,asp.net,string,encoding,C#,Asp.net,String,Encoding,我使用Querystring将值从一个页面传递到另一个页面。我试图使用Server.UrlDecode和urlEncode实现编码和解码 查询字符串返回空值,但我可以检查值是否已在URL中发送 这两页是: QueryString.aspx protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { string i

我使用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);
}

另一页:

QueryStringValuesTransAsfer.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中获取空值


请提供任何帮助。

这是因为您的查询字符串应该是

MyPage.aspx?id=xxx&name=yyy
您没有传递值,只有名称…

更改此行:

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));

您没有为这些值指定名称。你需要:

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));

查询字符串由键值对组成,您应该提供键值。

现在您只需在查询字符串中设置值,您需要为它们指定名称,以便再次获取它们:

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));