2012-03-19 3 views
21

excluding a file from the referenced output of an assembly이 아니라 하나를 추가하고 싶습니다!참조 된 프로젝트의 .config 파일을 포함합니다.

두 번째 클래스 라이브러리 프로젝트 (ClassLibrary1)를 참조하는 콘솔 응용 프로그램 프로젝트 (BuildTest1)가 있습니다. 비주얼 스튜디오 솔루션은 다음과 같습니다

Solution layout

는 내가의 app.config가있는 클래스 라이브러리 프로젝트가 있습니다. 이 .config 파일을 .dll 및 .pdb 파일과 마찬가지로 참조하는 프로젝트의 출력에 복사하려고합니다. 클래스 라이브러리에 대한 설정 파일이 클래스 라이브러리 출력 디렉토리에 'ClassLibrary1.dll.config'로 복사됩니다.

이 파일을 .exe 프로젝트의 .csproj 파일에 추가하려고 시도했지만 아무 것도 만들지 못했습니다. 차이 : 내가 너무 가까이

<PropertyGroup> 
    <AllowedReferenceRelatedFileExtensions> 
     .pdb; 
     .xml; 
     .config 
    </AllowedReferenceRelatedFileExtensions> 
    </PropertyGroup> 

답변

36

... 나는 Microsoft.Common.targets에 ResolveAssemblyReferences 대상에서 호출되는 MSBuild를 ResolveAssemblyReference 작업이를 아래로 추적. 이것이 ReferenceCopyLocalPaths 항목을 채 웁니다. 후속에 대한

<PropertyGroup> 
    <AllowedReferenceRelatedFileExtensions> 
     .pdb; 
     .xml; 
     .dll.config 
    </AllowedReferenceRelatedFileExtensions> 
</PropertyGroup> 
+3

감사 :

그래서 내가 파일 확장자 .dll.config이 (오히려 단지의 .config 이상) 속임수를 썼는지 발견이 일치 된 파일의 패턴을 찾고. 라이브러리 프로젝트에서 다른 설정 파일을 필요로한다는 것을 알기 때문에 다른 방법으로 구성 할 수는 없습니다. "내 설정 파일을 원해, 나를 믿어" –

+1

나를 위해 일했다 ... 고마워 !! – Krunal

+1

오, 정말 대단합니다. 고맙습니다! –