2009-05-12 14 views
6

वर्तमान में हमारा .NET कोड प्रोसेसर विशिष्ट नहीं है, लेकिन यह पुस्तकालयों (ओरेकल/ओडीपी.Net) पर निर्भर करता है। हमें एक समाधान मिला है जहां हम सीएसपीआरजे फ़ाइल को सीधे संपादित करते हैं, और हमारे चयनित बिल्ड कॉन्फ़िगरेशन के आधार पर संदर्भ समूह के साथ संदर्भ समूह में संदर्भ डालते हैं। हमारे पास 32 बिट डीबग/रिलीज और 64 बिट डीबग/रिलीज है, और जब आप उस कॉन्फ़िगरेशन को बनाते हैं तो सही असेंबली संदर्भ होते हैं।सशर्त संदर्भ

यह बिल्ड समय पर कम या ज्यादा काम करता है, लेकिन यह विजुअल स्टूडियो (2008) में सभी प्रकार की निराशा का कारण बनता है। अंत परिणाम यह है कि एक ही असेंबली संदर्भ के तहत चार बार दिखाई देती है, और तीन में पीले विस्मयादिबोधक चिह्न होते हैं। यह कुछ 76 चेतावनियां भी उत्पन्न करता है जिन्हें मैं छुटकारा नहीं पा सकता हूं। हम 0 चेतावनियों को लक्षित करने का प्रयास करते हैं क्योंकि हम जानना चाहते हैं कि नए लोग कब दिखते हैं, इसलिए यह एक समस्या है।

क्या किसी को सशर्त संदर्भों के समाधान के बारे में पता है जो इसे एक संदर्भ (जो वास्तव में है) की तरह दिखने की अनुमति देता है और बिल्ड समय पर मेरी चेतावनियों को भरता नहीं है?

उत्तर

1

केवल बात यह है कि मन 4 अलग प्रोजेक्ट फ़ाइलें चल रहा है करने के लिए आती है ... लेकिन इससे पहले कि आप 4 फ़ाइलें बनाए रखने के लिए जब कभी आप एक वर्ग को जोड़ने के होने के बारे में आतंक, यदि आप किसी अन्य csproj चाल यहाँ का उपयोग कर सकते हैं:

<Compile Include="**\*.cs" /> 

जो (आईआईआरसी) कहता है "फ़ोल्डर संरचना में किसी भी स्तर पर सभी सीएस फाइलों को शामिल करें"।

1

हमें एक ऐसा उत्तर मिला जो हम खोज रहे थे उससे थोड़ा अलग था, लेकिन मुझे यह पसंद है। आप runtime- के तहत अपने कॉन्फ़िग फ़ाइल>

 
<dependentAssembly> 
<assemblyIdentity name="Oracle.DataAccess" publicKeyToken="89b483f429c47342" /> 
<bindingRedirect oldVersion="2.111.6.20" newVersion="2.111.6.0" /> 
</dependentAssembly> 

AssemblyBinding को यह भी जोड़ते हैं तो फिर 64 बिट और 32 बिट संस्करण एक ही निर्माण के साथ काम करते हैं। हमें बस इतना करना है कि स्थानीय रूप से Oracle.DataAccess.dll कॉपी करें जब हम इसे तैनात करते हैं और इसे जीएसी से खींचते हैं।

धन्यवाद!