2012-11-21 8 views
6

Jestem pewien, że to pytanie zostało raz po raz. I tak, szukałem. Nie mogę jednak znaleźć przykładu, który jasno pokazuje, co chcę osiągnąć.Prawidłowy sposób zrobienia odpowiedzi. Odnośnik z jednej strony do drugiej w tej samej witrynie

Obecnie jestem na mywebsite/test.aspx, chcę przekierować do mywebsite/testing.aspx. Jednak chcę, aby to przekierowanie działało zarówno na żywo na serwerze, jak i podczas debugowania wizualnego studio. Wypróbowałem już:

Response.Redirect(Request.RawUrl.Replace(Request.RawUrl,"testing.aspx")) 

To jednak zastępuje całość.

Nadzieja to sens - mywebsite/test.aspx należy przekierować do mywebsite/testing.aspx

Odpowiedz

10

Użyj adresów URL aplikacji. ~/ reprezentuje ścieżkę główną aplikacji, więc będzie działać zarówno dla / i /virtual-directory/.

Response.Redirect("~/testing.aspx"); 
1

Można użyć url względem katalogu głównego serwisu WWW. Te adresy zawsze zaczynają się / co oznacza „root”

Dla Response.Redirect oraz wszelkie inne url wiesz będą przetwarzane przez serwer (jak URL podany pod kontrolą serwera) to lepiej zacząć URL z ~/ jako root, to pomoże z bałaganami z katalogów wirtualnych.

5

Jeśli strona jest na tym samym poziomie katalogu można po prostu użyć:

Response.Redirect("testing.aspx", false); 

Jeśli strona znajduje się na głównym aplikacji można użyć następującego polecenia:

Response.Redirect("~/testing.aspx", false); 

i wreszcie , jeśli strona znajduje się wewnątrz podkatalogu z bieżącej strony, można użyć:

Response.Redirect("MyFolder/testing.aspx", false); 
Powiązane problemy