2009-06-18 23 views
7

के लिए अलग-अलग संदर्भ सूची मेरे डीबग बिल्ड में मेरे पास एक डीएलएल का संदर्भ है जो केवल डीबग कॉन्फ़िगरेशन में आवश्यक है (संदर्भ कोडसाइट के लिए है, एक लॉगिंग टूल)।.NET डीबग/रिलीज

क्या रिलीज बिल्ड में इस संदर्भ को बाहर करना संभव है (मेरी लॉगिंग क्लास केवल डीबग कॉन्फ़िगरेशन में निर्मित होने पर इस संदर्भ का उपयोग करती है)।

वीबीएनईटी और वीएस 2008 का उपयोग करना।

उत्तर

11

हां यह संभव है लेकिन आपको मैन्युअल रूप से .vbproj फ़ाइल को संपादित करने की आवश्यकता होगी। एक बार जब आप फ़ाइल को खोलने आप DLL के लिए एक XML संदर्भ टैग आप संदर्भित कर दिया है और यह निम्नलिखित

<Reference Include="SomeDllName" /> 

आप एक शर्त संपत्ति जो प्रजातियों यह केवल डिबग के दौरान किया जाना चाहिए जोड़ने की जरूरत है की तरह दिखाई देगा समय

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

ओह, यह अच्छा है - मुझे नहीं पता था कि आप एक संदर्भ पर एक शर्त जोड़ सकते हैं। –

+0

@ जोन, मुझे लगता है कि आप इसे MSBuild फ़ाइल में बहुत अधिक प्रविष्टि पर कर सकते हैं। – JaredPar

+0

बिल्कुल, जैसा आवश्यक हो, धन्यवाद। धन्यवाद जॉन भी। –

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 में रख पाने के लिए पर्याप्त होना चाहिए कि।

संबंधित मुद्दे

 संबंधित मुद्दे