Tilde显示在URL而不是映射到root

时间:2011-04-14 13:39:11

标签: .net asp.net tilde

我们有一个在2.0框架上运行的旧.net站点。在此站点中,有多个调用在需要时通过调用response.redirect()进行重定向。由于某种原因,我无法弄清楚`字符已经停止映射到根 - 并且实际上显示为路径的一部分。例如:

Response.Redirect("~/shopping/checkout_confirm.aspx?rc=" & 
    MyPayment.ResponseCode & "&rt=" & MyPayment.ResponseText)

现在最终尝试重定向到:

https://www.site.com/shopping/~/shopping/checkout_confirm.aspx?rc=3

我也试过以下,没有运气:

Response.Redirect(Page.ResolveUrl("~/shopping/checkout_confirm.aspx?rc=" &
    MyPayment.ResponseCode & "&rt=" & MyPayment.ResponseText))

在开发环境中运行时,网址正确映射...有什么想法可以解决此问题的原因/解决方法?

2 个答案:

答案 0 :(得分:0)

ResponseText的一部分包含需要编码的字符。

答案 1 :(得分:-1)

尝试使用相对路径:

Response.Redirect("checkout_confirm.aspx?rc=" & MyPayment.ResponseCode & "&rt=" & MyPayment.ResponseText)