2010-12-08 8 views
1

모든 Microsoft.Practices 라이브러리 집합을 참조하는 여러 프로젝트가있는 솔루션이 있습니다. 현재이 라이브러리는 프로젝트 중 하나의 bin 폴더에 있으며 'DLL'이라는 솔루션 폴더 아래에 그룹화되어 있습니다.이 라이브러리는 전혀 마음에 들지 않습니다. bin 폴더는 출력 폴더로 남아 있어야하며 프로젝트간에 공유 된 종속성은 한 프로젝트의 '출력'에 숨겨져서는 안됩니다.참조 된 라이브러리에 대한 솔루션에 실제 폴더 추가

이상적으로 솔루션에 실제 폴더를 추가하고 해당 라이브러리를 해당 폴더로 옮기고 모든 프로젝트 참조를 업데이트하여 해당 폴더를 가리 키지 만 실제 폴더는 솔루션에 추가 할 수 없습니다. 거의 수용 가능한 해결책은 소스 파일이없는 새 프로젝트를 만들고 해당 프로젝트 용으로 만든 실제 폴더로 라이브러리를 이동하는 등의 작업입니다.

이와 같은 시나리오의 좋은 사례는 무엇입니까?

답변

1

솔루션 폴더를 추가했거나 이미 존재하는 "공통"프로젝트에 라이브러리를 추가했습니다. 이 같은

+0

아하, 나도 알아 챘어. 내가 새로운 프로젝트를 만들지 않고도 이걸 넣을 수있는 공통 프로젝트가있어. – ProfK

0

일반적인 방법은 프로젝트 디렉토리의 루트에 Lib 디렉토리를 만들고 거기에 dll을 저장하는 것입니다. 그것을 솔루션의 일부로 가질 필요가 없습니다. 그러나 솔루션에서 원하는 경우 솔루션 폴더를 만들어 거기에 배치 할 수 있습니다 (솔루션을 마우스 오른쪽 단추로 클릭하고 추가 메뉴를 확장 한 후 "새 솔루션 폴더"를 선택하십시오).

+0

내 생각에 그리울 것 같아. 나는 이러한 솔루션을 여러 프로젝트에서 동일한 솔루션으로 사용하기 때문에 솔루션의 일부가 될 필요가있다. 그래서 이들을 사용하는 각 프로젝트의 Lib 폴더는이 DLL의 여러 복사본을 의미한다. 나에게 솔루션 폴더가 없기 때문에 나는 dll을위한 이산적인 위치를 제공하지 않는다. 현재 솔루션 폴더에 있지만 실제로는 한 프로젝트의 bin 폴더에 있습니다. – ProfK

1

우리의 프로젝트/솔루션 구조의보기는 :

은 XDEV \ COMPANYNAME \ 프로젝트 이름 \ solutionfolder는 ..

여러 프로젝트에 사용되는 우리의 공통 라이브러리,

여기

있다

xdev \ companyname \ projectname \ libs ..

그건 우리에게 잘 작동합니다. 필자의 견해로는 솔루션에 어셈블리가있을 필요가 없습니다. 솔루션 전체 라이브러리 폴더가 필요하면 companyname 폴더에 넣으십시오. 폴더의 논리적 구조 일뿐입니다. ;-)

+0

예 @ 마리우스, TFS 탐색기를 사용하면 VS 내에서 솔루션 폴더 아래에 폴더를 만들 수 있습니다. 내가 사용할 공통 프로젝트를 찾지 못했다면 그것을 사용했을 것이다. – ProfK

+0

TFS에 libs를 갖고 싶다면 TFS에서 SharedProject를 사용하고 어셈블리를 넣으십시오. – Mariusz

관련 문제