2012-08-12 5 views
1

여러 프로젝트가있는 솔루션이 있습니다. 각 프로젝트는 빌드 후 해당 출력 디렉토리에 결합 된 어셈블리를 사용합니다. 이 프로젝트의 대부분은 공통 dll을 가지고 있습니다. 예를 들어 ProjectA.dll은 ProjectB, ProjectC 및 ProjectD에서 사용됩니다. ProjectA.dll을 하나의 중앙 폴더에 넣고 다른 클래스 라이브러리 프로젝트가 가리 키도록 할 수 있습니까? GAC에 대해 알고 있지만 여러 응용 프로그램에서 특정 어셈블리를 사용하는 경우에만 사용해야한다고 말합니다..NET에서 공통 어셈블리를 사용하는 여러 프로젝트

편집 : 배포하면, 나는 다음과 같은 구조를 원하는 :

Bin 
-> ProjectA.dll 
-> Other Projects 
----> ProjectB.dll 
----> ProjectC.dll 
MyProject.exe 

윌 projectA.dll 여전히 ProjectB.dll 및 ProjectC.dll에 의해 적절하게 참조 할 수?

답변

2

모든 프로젝트가 동일한 솔루션에 있으므로 Visual Studio에서는이 종속성을 관리하는 방법을 알고 있습니다. ProjectB, ProjectC, ProjectD의 ProjectA에 프로젝트 참조를 추가하기 만하면됩니다. 이렇게하려면 솔루션 탐색기에서 참조를 마우스 오른쪽 단추로 클릭하고 참조 추가를 클릭 한 다음 프로젝트 탭을 클릭합니다.

이것은 ProjectB, C 또는 D가 빌드되고 해당 프로젝트가 올바른 ProjectA \ bin \ Debug 또는 \ bin \ Release에서 DLL을 참조 할 때마다 ProjectA가 빌드하도록 만듭니다. 현재) 모든 것을 모두 최신 상태로 유지하고 DLL을 전체적으로 복사 할 필요가 없습니다.

+0

답변 해 주셔서 감사합니다. 응용 프로그램이 배포 된 경우에도 여전히 작동합니까? 프로그램을 배포 할 때 이런 종류의 구조를 계획하고 있습니다. (편집 된 질문보기) – randacun

+1

이 기사를 보셔야합니다. http://www.codeproject.com/Articles/12215/Assemblies-locating-binding-and-deploying –

0

프로젝트 A의 너겟 패키지를 만드는 것이 좋습니다. 게시 할 수있는 서버가없는 경우 네트워크 공유에 복사 한 다음 Visual Studio를 설정하여 해당 위치를 모니터링하십시오. Hth.

+0

고맙습니다. 그 점에 유의하겠습니다. – randacun

관련 문제