2009-08-22 5 views
2

私は作成しているHTMLヘルパーライブラリを持っていて、プラグインの1つにはURLを渡す必要があります。毎回何かを変えてしまうので、私は完全なURLを渡したくありません。すべてのURLをアップします。私が作ったHTMLヘルパークラスからフルURLを取得するには?

ファイルで完全なURLパスを取得するにはどうすればよいですか?私が相対的な道を通過するか、それとも完全な道に解決されるかのように。

答えて

1

VirtualPathUtilityが見える場所であるかもしれないHttpContext.Current.Server.MapPath(文字列)を使用することができます。例えば

VirtualPathUtility.ToAbsolute(src); 

を使用して絶対位置例えば「/VirtualDirectory/App/test.jpg」ならびに相対パスに「〜/ APP/test.jpg」のようなパスをレンダリングします。 UrlHelper(例:Content)クラスのインスタンスに公開されるメソッドも役立つ可能性があります。このスレッドへの将来の訪問者のための

0

あなたは

+0

HttpCurrent私のために表示されません。私はファイル内にSystem.Web名前空間を持っています。 – chobo2

+1

ああ "HttpContext.Current.Server.MapPath" – chobo2

+0

申し訳ありませんが、このURLは表示したい画像に使用されていると言わざるを得ないでしょう。これは全体のパスを取得しますが、それは表示されないように私のハードドライブにそれを取得します。 – chobo2

1

私は頻繁に次のコードを使用

var baseUrl = HttpContext.Current.Request.Url.AbsoluteUri; 
if (HttpContext.Current.Request.Url.LocalPath != "/") 
    baseUrl = baseUrl.Replace(HttpContext.Current.Request.Url.LocalPath.Substring(1), ""); 
関連する問題