code

mvc : favicon.ico도 컨트롤러를 찾습니까?

codestyles 2020. 11. 20. 08:58
반응형

mvc : favicon.ico도 컨트롤러를 찾습니까?


오류가 발생합니다.

" '/favicon.ico'경로에 대한 컨트롤러를 찾을 수 없거나 IController를 구현하지 않습니다."

그런 다음 생각했습니다. 스크립트, CSS 및 기타 파일에 대해서도 동일한 내용이 적용되므로 프레임 워크가 컨트롤러를 인스턴스화해야하는 파일을 어떻게 알 수 있습니까?

(그런 생각은 안했지만 지금은 파비콘이 불평하고 있는데 궁금해 ....)

그러나 오류로 돌아가서 왜 그런 일이 발생합니까?


이것을 global.asax에 추가하십시오 .

routes.IgnoreRoute("favicon.ico");

제약 조건으로 무시 경로를 지정할 수도 있습니다.

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

최고의 답변이 맞습니다.

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

그러나 최신 버전의 MVC의 경우 RouteConfig.csRegisterRoutes 메서드 맨 위에이를 추가해야합니다 (따라서 routes.MapRoute (..)가 호출되기 전 어딘가에).


아마도 VS 웹 서버에서 이것을 얻고있을 것입니다. 권리?

IIS (기본적으로)가 이미지 (.ico, .jpg, .gif 등)에 대한 요청을 처리하고 따라서 앱에 전달하지 않기 때문에 IIS에서는이를 얻을 수 없습니다.


흥미롭게 들리 겠지만에서 "내 코드 만 활성화"옵션을 선택한 경우에만이 오류가 발생했으며 tools->options->debugging, 선택을 취소하자마자 더 이상이 오류가 발생하지 않습니다.

그러나 오류가 여전히이면에서 발생하지만 내부적으로 즉시 포착되는 것처럼 보이므로 가장 좋은 해결책은 다른 답변에서 제안하는 것처럼 global.asax에서 코드를 무시하는 것입니다.

참고 URL : https://stackoverflow.com/questions/4624190/mvc-does-the-favicon-ico-also-look-for-a-controller

반응형