C#で現在のページのURLを取得する方法

C#でASP.NETの現在の作業ページのURLを取得したいのですが、どなたか教えてください。

お試しください。

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
解説 (11)

http:// と最初のスラッシュの間の部分だけが欲しい場合は

string url = Request.Url.Host;

このページから呼び出した場合、stackoverflow.comを返します。

ここでは、完全な内訳をご紹介します。

解説 (3)

検索してこのページにたどり着きましたが、私が探していたものとはちょっと違いました。私が探していたものを他の人も探しているかもしれないので、このページに投稿します。

文字列の値しかない場合は、2つの方法があります。

.NETの方法。

@Canavarと同じですが、新しいUriオブジェクトをインスタンス化します。

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

をインスタンス化できます。つまり、同じメソッド、たとえば

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

string host = uri.host
// localhost

Regexの方法です。

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

解説 (1)