C# Asp.Net查询字符串
我使用Querystring将值从一个页面传递到另一个页面。我试图使用Server.UrlDecode和urlEncode实现编码和解码 查询字符串返回空值,但我可以检查值是否已在URL中发送 这两页是: QueryString.aspxC# 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
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));