4

C# MVC4 でサーバー パスを取得する方法。例えば:http://192.169.1.120:60632

~/aFolder/file.htmのようなものを絶対パスに変換できるヘルパー関数はありますか? 理想的には、特定の URL を取得して完全な絶対 URL に変換する方法が必要です。例えば、対処することができます..

また、C# コード内のどこでも機能します。つまり、アクション コントローラー、signalR ハブ、モデルなどです。

また、リモート サーバーにデプロイしても機能します。

4

3 に答える 3

3

で利用Request.Url可能なプロパティを使用しControllerます。これは、リクエストに関する情報を含むUriオブジェクトを返します。そこからAbsoluteUriおよびPortプロパティにアクセスして、必要な情報を取得できます。

SignalR から URL 情報を取得することに興味がある場合は、この質問回答を参照してください。

于 2013-08-25T13:10:37.190 に答える
2

これを試して、

System.Web.HttpContext.Current.Server.MapPath(@"~/FolderName")

これらも試すことができます

string path = AppDomain.CurrentDomain.GetData("FolderName").ToString(); HostingEnvironment.MapPath(@"~/FoldeName");

于 2013-08-25T13:17:10.177 に答える
0

MVC では、Url.Action-の 4 番目のパラメーターを使用して完全修飾 URL を取得できprotocolます。

Url.Action("Index", "Home", null, Request.Url.Scheme)
于 2013-08-25T13:16:48.030 に答える