Как загрузить файл из папки Bin в ASP.NET в среднем доверии

StackOverflow https://stackoverflow.com/questions/2925501

Вопрос

Мне нужно загрузить файл XML из папки Bin в ASP.NET (MVC, а не то, что это будет подсчитать). Я не могу получить пункт папки Bin и не загрузить файл в противном случае .. Мне нужно кормить следующий метод:

using(var file = System.IO.File.OpenRead(/* something */))
{

}
Это было полезно?

Решение

Ну .. Под средним доверием все я мог сделать, а не у него взорвалось в моем лице было это:

var binFolderPath = Server.MapPath("bin");

тогда

Path.Combine(binFolderPath, "myConfigFile.xml");

Другие советы

По какой-то причине это появится, что по умолчанию ваш IIS не позволяет доступу к вашей папке Bin. Это, вероятно, унаследовано от родительского сайта выше вашего виртуального каталога. Несмотря на это, смотрите эту ссылку в отношении FILEIO со средним доверием:

http://msdn.microsoft.com/en-us/library/ms998341.

Скорее всего, вам нужно добавить раздел в ваш web.config, чтобы предоставить конкретный доступ к вашему AppDir, чтобы переопределить настройку из родительского сайта / виртуального каталога.

<IPermission
  class="FileIOPermission"
  version="1"
  Read="$AppDir$"
  Write="$AppDir$"
  Append="$AppDir$"
  PathDiscovery="$AppDir$"
/>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top