Использование Ответа. Перенаправление () к относительному пути

Я работаю с ASP.net. Мой веб-сайт размещается в подпапке test под корневым каталогом IIS. Таким образом, URL default.aspx http://localhost/test/Default.aspx. От default.aspx я хочу использовать Reponse.Redirect() с относительным путем для перенаправления к другому URL в том же веб-сайте, http://localhost/test/whatever.

Я попробовал

Response.Redirect("/whatever");

и

Response.Redirect("~/whatever");

Они оба перенаправляют к http://localhost/whatever. Обратите внимание что Redirect использование метода http://localhost вместо http://localhost/test/ как базовый URL.

Какие-либо идеи?

Спасибо.

11
задан Shuo 2 June 2010 в 20:01
поделиться

3 ответа

Try:

Response.Redirect("hello");

also

Response.Redirect("./hello");

Enjoy!

13
ответ дан 3 December 2019 в 07:36
поделиться

Попробуйте это (мой пример - VB.net)

  Dim url As String = "~/SomeDirectory/SomePage.aspx"
  Response.Redirect(url.Replace("~"c, Request.ApplicationPath))

Мне нравится иметь Utils.RedirectRelative ("~ / SomeDirectory / SomePage.aspx") где-нибудь в классе, но я не знать, что такое "хорошая практика".

0
ответ дан 3 December 2019 в 07:36
поделиться

Извините, если я слишком упрощаю или неправильно понимаю ваш вопрос, но вы просто попробовали:

Response.Redirect("hello");
3
ответ дан 3 December 2019 в 07:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: