mvc: делает фавикон.ico также ищет контроллер?



Я получаю сообщение об ошибке:




"контроллер для path' / favicon.ico 'не найден или не реализует IController"




тогда я подумал: как фреймворк знает, для каких файлов он должен создать экземпляр контроллера, потому что то же самое верно для скрипта, css и других файлов?



(никогда не думал об этом, но теперь фавикон жалуется, мне было интересно....)



Но вернемся к ошибке, почему это происходит?

531   5  

5 ответов:

добавить это к вам глобальные.асакс:

routes.IgnoreRoute("favicon.ico");

вы также можете указать маршрут игнорирования с ограничениями

routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" });

лучшие ответы верны.

routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" });

но для более новых версий MVC, вы должны добавить это в верхней части RegisterRoutes метод RouteConfig.cs (так где-то до маршрутов.MapRoute(..) призванный.)

вы, вероятно, получаете это с веб-сервером VS. Верно?

вы не получите этого с IIS, так как IIS (по умолчанию) обрабатывает запросы на изображения (.ico, .формат JPG. ,gif и т. д.), и поэтому они не попадают в ваше приложение.

интересно, как это звучит, я получил эту ошибку только если я проверил "включить только мой код" в tools->options->debugging, и как только я снял флажок, я больше не получаю эту ошибку.

обратите внимание, однако, что кажется, что ошибка все еще бросается за кулисы, но сразу же ловится внутри, поэтому лучшим решением является код в глобальном масштабе.асакс проигнорировал его, как и другие ответы.

Comments

    Ничего не найдено.