无法使用resolve url解析包含冒号(:)的相对Url

时间:2010-06-21 15:30:17

标签: c#

我正面临一个奇怪的错误。

Page.ResolveUrl("~/myPage.aspx?param=valueA:valueZ");

它只是不起作用,明显是因为':'。

当我的意思不起作用时我的意思是在这样的网站上:

http://myMachine/myVirtual/default.aspx

如果我点击之前包含代码的链接,我得到:

http://mymachine/MyVirtual/~/myPage.aspx?param=valueA:valueZ

任何人都知道如何使其有效?

THX

3 个答案:

答案 0 :(得分:3)

将':'替换为'%3A',不确定这是否是唯一的解决办法,但这是第一件事情。“

这是因为:字符是保留字符。有关保留字符的更多信息,您可以查看this site

答案 1 :(得分:1)

这是因为:字符是reserved。您需要将其编码为%3A ...

答案 2 :(得分:0)

对于多值传递,请使用:ASP QueryString Collection