私はその典型的な仮想ディレクトリのジレンマに実行している問題
あなたはASP.Netアプリケーション上でいくつかのパスを持っていて、IIS仮想でアプリを展開するIISディレクトリ。 "ウェブルート"(f.i.、 "/ images")に関連するすべてのパスは、アプリケーションが仮想ディレクトリパスにあるため動作しません。は、仮想ディレクトリとASP.NETのディレクトリパス
ソリューション
A.は "画像は" 仮想ディレクトリをフォルダ作成します。このように "/ images"は常に存在します。
B.私の画像のソースとして"<%=Request.ApplicationPath%>/Imagenes"
を使用してください。これはIISでうまく動作しますが、設計時やデバッグ時には見えません。現在に
- System.Web.VirtualPathUtility.ToAbsolute
- ResolveClientUrl
- Request.ApplicationPath
C.使用親戚パス:
このソリューションはまた、これらの命令を含みますコントロール/ページ。これは、イメージフォルダが現在のファイルとの相対的な位置にあることを正確に知っています(ルートに移動せずに) ""、 "../../"などのように使用します。
私はを探しています
解決策は、私はこれらのソリューションを好きではない。と言った。私は、web.configファイル内またはIISでソリューションを望む。私は、Webで書くのいくつかのconf intructionを私のアプリケーションは、実際に存在するIISを伝える.configファイル(仮想ディレクトリ)。
何かアドバイス?
代わりに、非サーバー側のimg要素のために、あなたはのように、根を参照するために、「/」文字を使用することができます。 –
@klabranche、チルダ(〜)はサーバー側のコントロール用で、サーバー側のコードでのみ使用できます(http://msdn.microsoft.com/en-us/library/ms178116.aspx) @DavidAndresスラッシュ "/"は、あなたのアプリケーションがWebサイトのルートにあることを前提としています(仮想ディレクトリではありません)。 (http://msdn.microsoft.com/en-us/library/ms178116。aspx) >サイトルートの相対パスで、サイトルート(アプリケーションルートではありません)に対して解決されます。 –
@dealmo - 私はあなたができるところを言った...私はあなたがあなたのリストにあなたの代わりのアプローチを探していることを理解しています。私はちょうど少なくともあなたができるところでできることをしていることを確認していました。 :) – klabranche