컨트롤러 메소드에 전달해야하는 종속성을 인터페이스로 등록하려고 시도하고 일부 조사를 수행 한 후에는 다음을 수행해야합니다. Sitecore을 설정하면 컨트롤러에서이 errpr에게Sitecore.Mvc.Controllers.SitecoreController 서비스를 지원하는 구성 요소가 없습니다. - Sitecore 7.2
ControllerBuilder.Current.SetControllerFactory(new WindsorControllerFactory(container.Kernel));
container.Register(Classes.FromThisAssembly().BasedOn<IController>().LifestyleTransient().Configure(x => x.Named(x.Implementation.FullName)));
코드 조각을 던졌습니다 것은 내가 유리 Mapeer와 IOC에 대한 성 윈저를 사용하고
public ActionResult Footer(ISomeFactory someFactory) {}
입니다.
감사합니다. Matt. 이로 인해 문제가 해결되었습니다. 하지만 지금은 점점 [MissingMethodException : 인터페이스의 인스턴스를 만들 수 없습니다. 개체 유형 'Glass.Mapper.Sc.ISitecoreContext'.]. Windsor Castle 및 MVC 5와 관련된 문제가 있다고 생각합니다. Glass Mapper 및 Solr와의 통합을 제거하고 GLobal.ascx.cs 파일에서 응용 프로그램 시작시에도이 오류를 계속 가져 오려고했습니다. MVC 5는 WindsorCastle과 호환되지 않습니다. 그렇지 않으면 실종되었습니다. –
Glass, Castle 및 MVC 5는 함께 잘 작동합니다. 이 오류는 Castle이 인터페이스로 인터페이스를 분석하려고 시도하고 있음을 나타냅니다. ISitecoreContext를 콘크리트에 등록하여이 문제를 해결할 수 있습니다. 보다 정확한 register() 메소드를 사용하여 답변을 업데이트했습니다. –
감사합니다. Matt와 당신의 말이 맞습니다.하지만이 모든 일은 함께 할 수 있습니다. GlassMapperScCustom 내부에서 조금씩 다르고, GM의 DependencyResolver.CreateStandardResolver() 컨테이너를 사용하고있었습니다. 이로 인해 Sitecore 컨트롤러가 등록 취소되었습니다. 다른 사람들이 쉽게 읽을 수 있도록 답을 쓸 것입니다. –