2009-06-18 2 views
7

내 디버그 빌드에는 디버그 구성에만 필요로하는 DLL에 대한 참조가 있습니다 (참조는 CodeSite, 로깅 도구 용입니다)..NET 디버거/릴리스에 대한 다른 참조 목록

릴리스 빌드에서이 참조를 제외 할 수 있습니까 (내 로깅 클래스는 디버그 구성에 빌드 된 경우에만이 참조를 사용합니다).

VB.NET 및 VS2008 사용.

답변

11

예 가능하지만 .vbproj 파일을 수동으로 편집해야합니다. 파일을 일단 당신이 DLL의에 대한 XML 참조 태그 당신이 언급 한 것이다 열고 당신은 그것이 단지 디버그 동안 수행해야합니다 종 조건 속성을 추가 할 필요가 다음

<Reference Include="SomeDllName" /> 

모양을 시간

<Reference Include="SomeDllName" Condition="'$(Configuration)'=='Debug'" /> 
+0

오, 멋지 네요. 하나의 참조에 조건을 추가 할 수 있다는 것을 몰랐습니다. –

+0

@ 존, 나는 MSBuild 파일의 모든 항목에서이 작업을 수행 할 수 있다고 생각합니다. – JaredPar

+0

정확하게 알려 주셔서 감사합니다. Jon에게 감사드립니다. –

5

이렇게 할 수는 있지만 프로젝트 파일을 수동으로 처리해야합니다.

우리는 MiscUtil에서이 작업을 수행하므로 .NET 2.0 빌드와 .NET 3.5 빌드를 가질 수 있습니다. 예를 들어 :

<ItemGroup Condition=" '$(Configuration)' != 'Release 2.0' "> 
    <Reference Include="System.Core"> 
    <RequiredTargetFramework>3.5</RequiredTargetFramework> 
    <Aliases>global</Aliases> 
    </Reference> 
    <Reference Include="System.Xml.Linq"> 
    <RequiredTargetFramework>3.5</RequiredTargetFramework> 
    </Reference> 
</ItemGroup> 

당신이 시작 :) 기본적으로는 일반 프로젝트 파일입니다 중 현재의 기준을, 적절한 조건과 자신의 ItemGroup에 넣어 얻을 충분해야한다 그.