Jak uzyskać adres URL bieżącej strony w C#

Czy ktoś może mi pomóc w uzyskaniu adresu URL bieżącej strony roboczej ASP.NET w C#?

Spróbuj tego :

string url = HttpContext.Current.Request.Url.AbsoluteUri;
// http://localhost:1302/TESTERS/Default6.aspx

string path = HttpContext.Current.Request.Url.AbsolutePath;
// /TESTERS/Default6.aspx

string host = HttpContext.Current.Request.Url.Host;
// localhost
Komentarze (11)

jeśli chcesz tylko część pomiędzy http:// a pierwszym ukośnikiem

string url = Request.Url.Host;

zwróciłoby stackoverflow.com, gdyby zostało wywołane z tej strony

Oto kompletny podział

Komentarze (3)

Wyszukiwanie wylądował mnie na tej stronie, ale to nie było'całkiem to, czego szukałem. Posting tutaj w przypadku ktoś inny szuka tego, co byłem ląduje na tej stronie zbyt.

Istnieją dwa sposoby, aby to zrobić, jeśli masz tylko wartość ciągu znaków.

Sposób .NET:

To samo, co @Canavar, ale możesz zainicjować nowy obiekt Uri

String URL = "http://localhost:1302/TESTERS/Default6.aspx";
System.Uri uri = new System.Uri(URL);

co oznacza, że możesz używać tych samych metod, np.

string url = uri.AbsoluteUri;
// http://localhost:1302/TESTERS/Default6.aspx

string host = uri.host
// localhost

Regex sposób:

https://stackoverflow.com/questions/27745/getting-parts-of-a-url-regex

Komentarze (1)