2012-07-27 4 views
0

ASP.NET MVC 4 RCMvcExtensionsMvcExtensions.Autofac의 최신 버전을 사용 중입니다.MvcExtensions를 사용하여 MVC 4에 표시되지 않는 영역

MVC 4가 MVC 3과 다르게 작동하는지 모르겠지만 MvcExtensions와 함께 사용할 때 내 영역이 전혀 표시되지 않습니다. 아래 코드는 MVC 3 애플리케이션에서이 코드를 사용하는 방법입니다. 난 그냥 복사하여 내 MVC 4 응용 프로그램에 붙여 넣습니다. MVC 4 응용 프로그램과 함께 제공된 기본 Global.asax.cs 파일을 사용하면 내 영역이 제대로 표시됩니다. 이 일을 다르게해야합니까?

public class MvcApplication : AutofacMvcApplication 
{ 
    public MvcApplication() 
    { 
      Bootstrapper.BootstrapperTasks 
       .Include<RegisterAreas>() 
       .Include<RegisterControllers>() 
       .Include<RegisterRoutesBootstrapper>() 
       .Include<AutoMapperBootstrapper>() 
       .Include<FluentValidationBootstrapper>(); 
    } 

    protected override void OnStart() 
    { 
      FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); 

      base.OnStart(); 
    } 
} 

RegisterRoutesBootstrapper, AutoMapperBootstrapperFluentValidationBootstrapper 내 사용자 정의 부트 스트 래퍼 클래스입니다 :

은 내가 Global.asax.cs는 다음과 같이 할 파일을 교체했다.

답변

1

방금 ​​MvcExtensions (v2.5.0) 및 맞춤 영역이있는 테스트 Mvc4 앱을 만들었습니다. 모든 것이 잘 작동합니다.

당신이 당신의 루트 web.config 파일에 bindingRedirects이 있는지 확인하십시오 :이 바인딩없이

<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
    <dependentAssembly> 
     <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" /> 
    </dependentAssembly> 
    <dependentAssembly> 
     <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" /> 
    </dependentAssembly> 
    <dependentAssembly> 
     <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" /> 
    </dependentAssembly> 
    </assemblyBinding> 
</runtime> 

는 영역이 작동하지 않습니다 리디렉션합니다.

관련 문제