我正在硬编码一个网址,使其具有如下内容:
“/ContactUs.aspx?mode=New&form=联系人”
页面正在将以下内容呈现为网址的一部分...
mode=New&%3bform=联系方式
所以当我重定向到此页面时页面会中断。并尝试Request.QueryString[“form”]。
我怎样才能让它与 & 符号一起工作
最佳答案
您是否尝试过使用 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.
关于c# - & 符号 url 编码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1194616/