問題
ASP.Netアプリケーションにいくつかのパスがあり、IIS仮想ディレクトリにアプリを展開するという典型的な仮想ディレクトリのジレンマに直面しています。次に、アプリが仮想ディレクトリパスにあるため、「Webルート」(fi、「/ images」)に関連するすべてのパスが機能しません。
ソリューション
A.「images」フォルダを仮想ディレクトリにします。このように、「/images」は常に存在します。
B."<%=Request.ApplicationPath%>/Imagenes"
画像のソースとして使用します。これはIISでうまく機能しますが、設計時でもデバッグ時でも表示されません。
このソリューションには、次の手順も含まれています。
- System.Web.VirtualPathUtility.ToAbsolute
- ResolveClientUrl
- Request.ApplicationPath
C.現在のコントロール/ページへの相対パスを使用します。これにより、画像フォルダが現在のファイルに対してどこにあるかが正確にわかります(ルートに移動する必要はありません。したがって、「」、「../」、「../../」などを使用します。
私が探している解決策
と言った。私はこれらの解決策が好きではありません。web.configファイルまたはIISで解決策が必要です。アプリケーションが実際に存在する場所(仮想ディレクトリ)をIISに通知するweb.configファイルに書き込むいくつかの構成命令。
何かアドバイス?