2013-04-07 2 views
0

나는 기존 솔루션 (여러 프로젝트, 하나의 MVC 웹 프로젝트)을 가지고 있으며 오차드 모듈로 포장하려고합니다.과수원 CMS 사용자 정의 모듈 프로젝트 파일

모든 설명서에 따르면 웹 csproj는 모듈 디렉토리 (예 : Modules/MyModule/MyWeb.csproj) 아래의 루트에 있어야한다고 나와 있습니다.

그러나 sln 파일이 최상위 수준에 있고 각 csproj 파일 (및 프로젝트 컨텐츠)이 자체 디렉토리 (Visual Studio에서 다중 프로젝트 응용 프로그램을 빌드 할 때 표준 솔루션 구조)에있는 기존 솔루션 구조가 있습니다. 사진관).

내 Module.txt 파일에 Orchard Module csproj가 MyModule/MyWeb/MyWeb.csproj에 있음을 알릴 수있는 방법이 있습니까? 나는 전체 솔루션을 재구성하지 않는 것을 선호한다.

감사합니다.

답변

0

참고 : 설명의 점으로, 그것은하지 ~/모듈/인 MyModule/MyWeb.csproj하지만 ~/모듈/인 MyModule/MyModule.csproj입니다. 모듈의 폴더 이름은 프로젝트의 파일 이름 (.csproj 앞에 있음)과 일치해야합니다. 이는 ~/Module/{ModuleId}/{ModuleId} .csproj가 필요한 동적 확장 로더에 의해 강제 적용됩니다. (비슷한 방법이 테마에 필요합니다.)

위의 예는 사용자 정의 로더가 들어있는 사용자 정의 모듈을 작성하는 유일한 방법입니다. 모듈 내에서 IExtensionLoader의 구현을 직접 작성하고 Autofac에 등록하십시오. 그러나 그것이 효과가 있는지 나는 모른다. 나는 한번도 시도한 적이 없다.

솔루션을 쉽게 재구성 할 수 있습니다.

관련 문제