Получить файлы в папке - PullRequest
       17

Получить файлы в папке

18 голосов
/ 11 января 2010

В моем приложении MVC у меня есть следующие пути:

  • / содержание / изображения / полный
  • / содержание / изображения / превью

Как мне получить в моем контроллере c # список всех файлов в папке thumbs?

Редактировать

Является ли Server.MapPath лучшим способом?

У меня есть это сейчас DirectoryInfo di = new DirectoryInfo(Server.MapPath("/content/images/thumbs") );, но я чувствую, что это не правильный путь.

Есть ли в MVC наилучшая практика для этого или вышеприведенное все еще верно?

Ответы [ 2 ]

43 голосов
/ 13 ноября 2012

.NET 4.0 получил более эффективный метод для этого:

Directory.EnumerateFiles(Server.MapPath("~/Content/images/thumbs"));

Вы получаете IEnumerable<string>, на котором вы можете повторять представление:

@model IEnumerable<string>
<ul>
    @foreach (var fullPath in Model)
    {
        var fileName = Path.GetFileName(fullPath);
        <li>@fileName</li>
    }
</ul>
6 голосов
/ 11 января 2010
Directory.GetFiles("/content/images/thumbs")

Это позволит получить все файлы в каталоге в массив строк.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...