无法转义HTML标记中的“&”字符会创建一个entity。当链接文档中的URL时,通常会无意中完成,而W3C的Markup Validation Service将认为这是一个错误。Response.Redirect&符号编码
我想知道,ASP.NET的Response.Redirect方法是否期望&符号在其url
参数中转义?从阅读其MSDN描述,我真的不知道。
无法转义HTML标记中的“&”字符会创建一个entity。当链接文档中的URL时,通常会无意中完成,而W3C的Markup Validation Service将认为这是一个错误。Response.Redirect&符号编码
我想知道,ASP.NET的Response.Redirect方法是否期望&符号在其url
参数中转义?从阅读其MSDN描述,我真的不知道。
传递网址的方式应与网络浏览器中的地址栏中显示的一致。例如,如果您尝试重定向到http://example.com/?foo=bar&baz=quux,那么将该确切字符串原样传递给Response.Redirect。
尝试UrlEncode
UrlEncode(String)方法可用于编码整个URL,包括查询字符串值。如果诸如空格和标点符号等字符在HTTP流中传递而没有进行编码,则可能会在接收端误解。 URL编码将URL中不允许的字符转换为与字符实体等同的字符;网址解码反转编码。例如,当字符<和>嵌入到要在URL中传输的文本块中时,它们被编码为%3c和%3e。 URLEncode
System.Web.HttpUtility.UrlEncode(string url)
+1推荐好的做法,但没有回答是否传递来urlencode'&'或'&'。 – 2013-03-21 07:55:59