3

を使用してブラウザの URL を取得できます。string url = HttpContext.Current.Request.Url.AbsoluteUri; ただし、次のような URL があるとします。

http://www.test.com/MyDirectory/AnotherDir/testpage.aspx

その「MyDirectory」部分を取得するにはどうすればよいですか。.NET にこれを取得するためのユーティリティはありますか、それとも文字列操作が必要ですか?

文字列操作を行い、「/」の最初のインスタンスの後に何かを言うと、http: の後にスラッシュが返されませんか? 私のURLがwww.test.com/MyDirectory/AnotherDir/testpage.aspx

誰か助けてくれませんか

4

3 に答える 3

8

URL から Uri インスタンスをインスタンス化します。

Uri myUri = new Uri("http://www.test.com/MyDirectory/AnotherDir/testpage.aspx");

次に、次を使用して、パス セグメントを文字列配列に取得できます。

string[] segments = myUri.Segments

最初の「MyDirectory」フォルダーは次の場所にあります。

string myFolderName = segments[0];
于 2012-11-07T16:10:55.380 に答える
4

PathAndQueryあなたはのプロパティによってこれを得ることができますUrl

var path = HttpContext.Current.Request.Url.PathAndQuery;

戻ります/MyDirectory/AnotherDir/testpage.aspx

于 2012-11-07T16:08:25.133 に答える
2
 Uri uriAddr = new Uri("http://www.test.com/MyDirectory/AnotherDir/testpage.aspx");
 var firstSegment= uriAddress.Segments.Where(seg => seg != "/").First();
于 2012-11-07T16:15:40.447 に答える