Wie Sie die URL der aktuellen Seite in C# erhalten

Kann jemand helfen, mich in immer die URL der aktuellen Arbeitsseite von ASP.NET in C#?

Versuchen Sie dies:

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
Kommentare (11)

wenn Sie nur den Teil zwischen http:// und dem ersten Schrägstrich haben wollen

string url = Request.Url.Host;

würde stackoverflow.com zurückgeben, wenn es von dieser Seite aus aufgerufen wird

Hier ist die vollständige Aufschlüsselung

Kommentare (3)

Eine Suche hat mich auf diese Seite geführt, aber es war nicht ganz das, was ich gesucht habe. Ich poste hier, falls jemand anderes auf der Suche nach dem, was ich war, auch auf dieser Seite landet.

Es gibt zwei Möglichkeiten, dies zu tun, wenn Sie nur einen String-Wert haben.

.NET Weg:

Wie @Canavar, aber Sie können ein neues Uri-Objekt instanziieren

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

instanziieren, was bedeutet, dass man die gleichen Methoden verwenden kann, z.B.

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

string host = uri.host
// localhost

Regex Methode:

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

Kommentare (1)