2014-09-26 2 views
2

나에게서 또 다른 초등 질문을 준비하십시오. MVC 사이트의 Area 개념에 대해 이해하고 있다고 생각합니다.하지만이를 더욱 체계화하고 싶습니다. 그것들을 외부 프로젝트 (컨트롤러, 뷰, 스크립트, 스타일 포함)로 옮기거나 Area 폴더 안에 하위 폴더를 만드십시오.ASP.Net MVC 5에서 조직 영역

이유 나는 영역 아래에 폴더를 만들려고했는데 Common이라고하고 그 폴더 안에 영역을 만들어 MyTest라고했습니다. mysite.com/mytest으로 이동하려고하면 오류가 발생합니다.

답변

1

평소에는 길로 가야하고 Areas ASP.NET 루트 폴더의 하위 폴더로 영역을 사용해야합니다. URL이 실패하는 유일한 이유는 AreaRegistration 파일이 경로를 제대로 등록하지 않았기 때문입니다. 경로를 디버깅하는 방법으로 Glimpse을 확인하거나 파일을보고 자신을 알아 내려고 시도 할 수 있습니다. ASP.NET은 AreaRegistration에서 상속받은 클래스를 자동으로 찾고 사용자 영역에 맞는 경로를 등록하는 데 사용합니다. 경로가 제대로 구성된 것으로 보이는 경우 컨트롤러가 경로에서 볼 수있는 네임 스페이스에 있는지 확인하십시오.

컨트롤러 모델과 뷰가있는 영역을 별도의 프로젝트로 분리하려면보기를 배치 할 수있는 유일한 방법이기 때문에 자신 만의 VirtualPathProvider을 만들어야합니다. 그러나, 그들은 Embedded Resource이어야하고 debuuged 수 없습니다. 귀하의 지역, 별도의 DLL에있는 경우, 자동으로 등록되며 귀하의 컨트롤러는 자동으로 DLL을 주 응용 프로그램에있는 한 Bin 폴더에있는 것으로 발견된다.

관련 문제