Может ли контроллер ASP.NET MVC вернуть изображение?

Используя окончательную версию mvc.net MVC, я делаю следующее:

[AcceptVerbs(HttpVerbs.Get)]
[OutputCache(CacheProfile = "CustomerImages")]
public FileResult Show(int customerId, string imageName)
{
    var path = string.Concat(ConfigData.ImagesDirectory, customerId, "\\", imageName);
    return new FileStreamResult(new FileStream(path, FileMode.Open), "image/jpeg");
}

У asp.net меня, очевидно, есть кое-что, относящееся mvc.net к конкретному приложению, касающееся images построения пути, но возврат image FileStreamResult приятен images и прост.

Я провел небольшое picture тестирование производительности img в отношении этого действия controllers в отношении вашего повседневного asp.net-mvc обращения к изображению (в aspx обход контроллера), и разница asp.net-website между средними значениями asp.net составила всего около 3 миллисекунд controller (среднее значение контроллера asp.mvc - 68 мс, неконтроллер - 65 asp-mvc мс).

Я пробовал некоторые img другие методы, упомянутые asp.net-website в ответах здесь, и снижение asp-mvc производительности было гораздо aspdotnet более значительным ... ответы aspdotnet на некоторые решения были asp.mvc в 6 раз больше, чем неконтроллер img (другие контроллеры в среднем controllers 340 мс, неконтроллер 65 мс asp.net ).

asp.net

asp.net-mvc

image

controller

2022-11-11T23:42:42+00:00
Вопросы с похожей тематикой, как у вопроса:

Может ли контроллер ASP.NET MVC вернуть изображение?