Отображение тильды в URL вместо сопоставления с корнем - PullRequest
2 голосов
/ 14 апреля 2011

У нас есть старый сайт .net, который работает на платформе 2.0.На этом сайте есть несколько вызовов, которые перенаправляют при необходимости, вызывая 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))

При запуске в среде разработчика URL-адрес отображается правильно ... Есть идеи о том, что может быть причиной / исправить эту проблему?

Ответы [ 2 ]

0 голосов
/ 15 апреля 2011

Часть ResponseText содержала символ, который нужно было закодировать.

0 голосов
/ 14 апреля 2011

Попробуйте вместо этого использовать относительный путь:

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