&符号网址编码问题

时间:2009-07-28 14:46:43

标签: c# .net asp.net

我很难对网址进行编码:

“/ ContactUs.aspx模式=最新及安培;形式=联系”

页面将以下内容呈现为网址的一部分......

模式=最新及放大器;放大器%3bform =联系

所以当我重新访问此页面时页面会中断。并尝试Request.QueryString [“form”]。

我怎样才能让它与&符号

1 个答案:

答案 0 :(得分:4)

您是否尝试使用HTML实体&转义&符号?必须转义URL中的&符号。您还应该对在查询字符串中传递的任何值进行URL编码 - 我认为HttpUtility.UrlEncode()可以做到这一点(在我的脑海中)。

例如,您的网址应为:

/ContactUs.aspx?mode=New&form=Contact

但是,如果您使用<asp:HyperLink />,则无需执行此操作,因为NavigateUrl属性会自动编码。

请参阅this article on URL Encoding了解您需要执行此操作的原因。在.NET中,您可以使用HttpUtility.UrlEncode method执行此操作。这也可以通过当前Server.UrlEncode

HttpContext.访问