2013-02-05 4 views
0

중요한 것은 아니지만 여전히주의를 끌고 있습니다. 컨트롤러에서 생성자 매개 변수를 삽입하기 위해이 팩토리 내에서 직접 구현 된 MVC4 웹 응용 프로그램을 기본 컨트롤러 팩터로 대체했습니다.모든 요청에서 모든 컨트롤러에 대해 IControllerFactory.CreateController가 호출됩니다.

내가 이해하지 못하는 이유는 각각의 요청마다 CreateController 메서드가 URL 뷰어와 부분 뷰에서 호출 한 컨트롤러가 아니라 응용 프로그램의 모든 컨트롤러에 대해 호출된다는 것입니다.

정상입니까? 그것을 방지 할 수있는 방법이 있습니까? 나는 이것을위한 아무 이유도 보고지 않으며 나의 연구는 어떤 좋은 대답으로도 이끌지 않았다.

감사합니다.

+0

여분의 컨트롤러가 호출 될 때 호출 스택이란 무엇입니까? – SLaks

+0

@SLaks 방금 원인을 발견했습니다. 내 대답을보세요. – rsalfonso

답변

1

하! 그것은 당신이 MVC 사이트 맵 솔루션을 사용할 때마다 요청에 대한 모든 컨트롤러를 구축 밝혀,이 라인을 제거하여, 이상한 행동이 글을 읽을 것들에 대한 어쨌든 더 이상

@Html.MvcSiteMap().SiteMapPath() 

감사를 발생하지 않았고 나는 누군가를 희망 이 유용한 발견!

관련 문제