中程度の信頼のasp.netのbinフォルダーからファイルをロードするにはどうすればよいですか
-
05-10-2019 - |
質問
ASP.NET(MVC、カウントされるわけではない)のBINフォルダーからXMLファイルをロードする必要があります。 Binフォルダーパスを取得したり、ファイルをロードしたりすることはできません。次の方法にフィードする必要があります。
using(var file = System.IO.File.OpenRead(/* something */))
{
}
解決
まあ..中程度の信頼の下で、私ができることはすべて、私の顔にそれを吹き飛ばさないことはこれでした:
var binFolderPath = Server.MapPath("bin");
それから
Path.Combine(binFolderPath, "myConfigFile.xml");
他のヒント
何らかの理由で、デフォルトでは、IISがビンフォルダーへのアクセスを許可していないように見えます。これはおそらく、仮想ディレクトリの上の親サイトから継承されます。とにかく、中程度の信頼を持つFileioに関するこのリンクを参照してください。
http://msdn.microsoft.com/en-us/library/ms998341
親サイト/仮想ディレクトリから設定をオーバーライドするために、AppDirへの特定のアクセスを提供するために、Web.configにセクションを追加する必要がある可能性があります。
<IPermission
class="FileIOPermission"
version="1"
Read="$AppDir$"
Write="$AppDir$"
Append="$AppDir$"
PathDiscovery="$AppDir$"
/>
所属していません StackOverflow