Как лучше всего читать текстовые файлы с сервера в asp.net-mvc - PullRequest
52 голосов
/ 05 июля 2011

В одном из моих действий контроллера мне нужно прочитать текстовый файл, в котором есть куча справочных данных. Прямо сейчас я просто помещаю его в каталог "/ Content".

Мои вопросы:

  1. Это «правильное» место для размещения этого файла или я должен поместить его в другой каталог?
  2. Как лучше всего читать текстовый файл в asp.net-mvc, который находится на сервере?

Ответы [ 2 ]

98 голосов
/ 05 июля 2011

Если файл не должен быть напрямую доступен через URL, вы должны поместить его в App_Data.

Для чтения, просто используйте:

var fileContents = System.IO.File.ReadAllText(Server.MapPath(@"~/App_Data/file.txt"));
19 голосов
/ 21 сентября 2016

Хорошо, таким образом, это работает для меня (VS2017)

  1. Установите для параметра Действия для файла file.txt значение Содержимое
  2. Проверьте, копируется ли на выходкаталог не установлен на «Не копировать»
  3. Использовать HostingEnvironment.MapPath(@"~/App_Data/file.txt") (благодаря комментарию Хонг)

    var fileContents = 
        System.IO.File.ReadAllText(HostingEnvironment.MapPath(@"~/App_Data/file.txt"));
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...