[英]Asp.Net Query String
I am using Querystring to pass values from one page to other. 我使用Querystring将值从一个页面传递到另一个页面。 I am tring to implement encoding and decoding using the Server.UrlDecode and urlEncode. 我想使用Server.UrlDecode和urlEncode实现编码和解码。
Query string returns a null value, but I can check the values are been sent in URL. 查询字符串返回空值,但我可以检查值是否已在URL中发送。
The two pages are: 这两页是:
QueryString.aspx 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);
}
;; ;;
In another page : 在另一页:
QueryStringValuesTransfer.aspx: 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);
}
} }
I am get null values in the id1 and name1. 我在id1和name1中得到空值。
Any help please.. 任何帮助请..
改变这一行:
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));
That's because your query string should be something like 那是因为你的查询字符串应该是这样的
MyPage.aspx?id=xxx&name=yyy
You are not passing the values, only the names... 你没有传递价值,只传递名字......
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));
You aren't specifying a name for the values. 您没有为值指定名称。 You need: 你需要:
string url = string.Format("QueryStringValuesTransfer.aspx?id={0}&name={1}", Server.UrlEncode(id), Server.UrlEncode(name));
When constructing the URL in the first page you should do this: 在第一页中构建URL时,您应该这样做:
string url = string.Format("QueryStringValuesTransfer.aspx?id={0}&name={1}", Server.UrlEncode(id), Server.UrlEncode(name));
The query string consists of key-value pairs, you should provide the keys. 查询字符串由键值对组成,您应该提供键。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.