分配字符串变量包含带“&”的URL符号

时间:2014-03-16 09:23:59

标签: c# asp.net string

虽然Assingning字符串变量包含带有'&'符号vai查询字符串 它将字符串拆分为'&'之后的字符串就像下面那样消失了

查询字符串包含类似此"http://maps.googleapis.com/maps/api/staticmap?center=34.0833869772674,74.7986488044262&zoom=21&size=550x450&maptype=roadmap&sensor=true"

的条带

但是当我分配如下

string str = Request.QueryString["imgName"].ToString();

它只包含"http://maps.googleapis.com/maps/api/staticmap?center=34.0833869772674,74.7986488044262"部分

2 个答案:

答案 0 :(得分:2)

来自MSDN:

The QueryString collection retrieves the values of the variables in the HTTP query string. The HTTP query string is specified by the values following the question mark (?).

在您的情况下,QueryString集合将包含五个成员: centerzoomsizemaptypesensor。 像这样检索它们:

Request.QueryString("center")

同样适用于其他变量。

答案 1 :(得分:0)

您可以使用Server.UrlEncode()方法生成用于在url中使用的保存字符串。例如:

string queryString = "http://maps.googleapis.com/maps/api/staticmap?center=34.0833869772674,74.7986488044262&zoom=21&size=550x450&maptype=roadmap&sensor=true";
Response.Redirect("http://www.mysite.com/?imgName=" 
                    + Server.UrlEncode(queryString));