Ответ 1
Вам нужно создать маршрут игнорирования для определенных типов файлов, которые вы не хотите обслуживать через ASP.NET MVC.
Добавьте к своим маршрутам следующее: для типов файлов, которые вы хотите игнорировать.
Следующие файлы для файлов в корневом каталоге:
routes.IgnoreRoute("{file}.css");
routes.IgnoreRoute("{file}.jpg");
routes.IgnoreRoute("{file}.gif");
Если вы хотите игнорировать файлы в определенном каталоге, вы можете сделать это:
routes.IgnoreRoute("assets/{*pathInfo}");
Если вы хотите объединить их в один маршрут, вы можете (например, игнорировать определенные типы файлов в каталоге):
routes.IgnoreRoute("{assets}", new { assets = @".*\.(css|js|gif|jpg)(/.)?" });
Эта перегрузка IgnoreRoute
принимает URL-адрес (первый аргумент) и объект Constraints вещей, который нужно игнорировать.
Так как RouteConstraints в ASP.NET MVC можно реализовать несколькими способами (включая регулярное выражение), вы можете поместить стандартные регулярные выражения во второй аргумент.
Если вы хотите реализовать пользовательское ограничение, есть много полезной документации по этому вопросу (скажем, если ваше ограничение является динамическим во время выполнения).