Согласно документации MSDN, по умолчанию атрибут FileExtensionsAttribute (.NET 4.5) должен позволять мне загружать только файлы jpg, jpeg, gif и png - это то, что мне нужно.
Я попытался загрузить jpg без атрибута, все работает. Отлично. затем
Я добавил атрибут в мою модель вида ..
[FileExtensions(ErrorMessage = "Please specify a valid image file (.jpg, .jpeg, .gif or .png)")]
public HttpPostedFileBase ImageFile { get; set; }
Нет радости. Проверка не пройдена, и отображается сообщение ErrorMessage. Кроме того, кажется, нет способа указать любые разрешенные пользовательские расширения файлов.
В итоге я расширил атрибут FileExtensionsAttribute и использовал собственную логику проверки, которая работает, как и ожидалось. Но почему этот способ не работает?
Будет публиковать весь контроллер и просматривать при необходимости. Я использовал этот пример в качестве основы для логики загрузки, но с использованием DataAnnotations.FileExtensionsAttribute вместо Microsoft.Web.Mvc.FileExtensions .. Как загрузить изображения в ASP.NET MVC?