デバッグしようとしている .NET アプリケーションがあり、アプリケーションの一部がプロジェクトからファイルをロードします。このファイルは次の場所にあります。
C:\Users\USER_FOLDER\Documents\Visual Studio 2012\Projects\MY_PROJECT\_templates\myFile.html
私のコードでは、ファイルへの相対パスを指定し、DirectoryInfo クラスを使用してファイルへの完全なディレクトリ パスを取得します。
string myFile = (new DirectoryInfo("_templates/myFile.html")).FullName;
ただし、これは次のパスを返します (エスケープ文字として追加の \ が使用されます)。
"C:\\Program Files\\IIS Express\\_templates\\myFile.html"
IIS Express でのデバッグ時に返されるパスは、3 番目ではなく、最初にリストしたパスと一致すると予想していました。どうしてこれなの?パスを適切に導出するために、プロジェクトで設定する必要があるものは他にありますか? 私のコードを IIS7 サイトに展開した場合、これは起こらないと思いますが、まだそのテスト レベルには達していません。