문제

나는 현지화 httphandler 를 실행하는 맥락에서 나 ASP.Net MVC2 콘텐츠 폴더(부분을 컴파일.적은 파일에 있는 내용//css).기본 경로에 대한 이 특별한 설정의 요청은 다음과 같습니다:

context.Routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

context.MapRoute(
    "Area_default",
    "{controller}/{action}/{id}",
    new { controller = "Home", action = "Index", id = UrlParameter.Optional },
    new { controller = new VirtualDirectoryConstraint("VDirectory1") },
    new string[] { "Namespace.One.MVC" }
);

(옆으로-나는 생각하지 않는 그것의 관련,하지만 단지의 경우 VirtualDirectoryConstraint 거부하는 경기에서 이 경로에 요청이 있는 경우 오지 않아서 전달된 응용 프로그램 경로를/가상 디렉토리)

이 구성으로 전화 http://server.net/VDirectory1/Content/css/LessCompiler.axd 실패 없기 때문에 ContentController 클래스입니다.모든 그리고 좋은 것입니다.

할 때 추가

context.Routes.IgnoreRoute("{Content}/{*pathInfo}");

는 호출이 성공하지만,후속 호출

http://server.net/VDirectory1/Localization/ClientScript/en-US.js

http://server.net/VDirectory1/Authorization/ClientScript

실패합니다.보고에 필 Haack 의 RouteDebugger 도구,그러한 호출은 일치하는 콘텐츠 IgnoreRoute 경로:

True    {Content}/{*pathInfo}   (null)  (null)  (null)

따라서지로 라우팅 LocalizationController 및 AuthorizationController,각각합니다.

분명히 나는 오해가는 방법에 대해 IgnoreRoute 를 사용하는 이유는 특정 IgnoreRoute 은 일치하는 그 요청합니다.나는 무엇이 없는가?

도움이 되었습니까?

해결책

지의 IgnoreRoute 사용 Content{Content} ?

context.Routes.IgnoreRoute("Content/{*pathInfo}");

는 순간에, {Content} 아마 확장되고있는 변수로는 아무것을 만드는 pathinfo 에 모든 것을 일치.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top