프리즘이있는 WPF 프로젝트가 있습니다. 기본적으로 하위 폴더 (PrismModules)에있는 일부 모듈을 동적으로로드하고 있습니다.clickonce에서 프로젝트 DLL의 대상으로 하위 폴더를 지정하는 방법은 무엇입니까?
응용 프로그램은 정상적으로 작동하지만 ClickOnce를 사용하여 배포하려고하면 출력 경로 구조가 무시되고 "PrismModules"하위 폴더 대신 모든 내용이 루트 폴더에 저장됩니다. 그런 다음 응용 프로그램은 해당 모듈을로드하지 않습니다.
이 제한 사항은 ClickOnce 배포의 제한 사항입니까?
Solution
- WpfClient
- PrismModules
- Module A
- Module B
- Module C
그들은 모두 같은 루트 디렉토리에 내장되어, 모듈 A/B/:
편집
조금 더 많은 정보를 제공하려면, 여기에 어떻게 솔루션을 구성되어있다 C는 하위 폴더 PrismModules
에 있습니다.
WpfClient는 모듈을 참조하지 않으며 런타임에 PrismModules
폴더를 검색하고 IModule
의 구현을 포함하는 모든 DLL을로드합니다.
내가 무슨 짓을주의 :
루트에 넣어 참조 (그리고 PrismModules
폴더) 된 일부 DLL 및 동적으로로드 된 것들, 우리는 아무것도를 설정할 수 없습니다 (심지어 존재하지 않는 ClickOnce를 메뉴에서 해당. 하위 폴더 PrismModules를 만들고 당신의 모듈 의 DLL을에 링크로 추가 (ClickOnce를로 배포) 주 프로젝트에서
그러나 내 DLL은이 디렉토리에 방금 빌드 된 프로젝트입니다. – J4N
프로젝트 구조를 이해하지 못합니다. 설명 할 수 있니? – dvorn
이해가 안되는 점 : DLL을 업데이트하면 다시 복사해야한다는 의미입니까? 디버그에서 작동합니까? – J4N