जैसा आपने कहा, यह सिर्फ एक चेतावनी है। क्योंकि ODP.net "AnyCPU" नहीं है, चेतावनी इंगित करती है कि आपके पास एक निर्भरता है जो आपके स्वयं के एप्लिकेशन के रूप में होस्ट ऑपरेटिंग सिस्टम के अनुकूल नहीं होने वाली है। जब तक आपका odp.net इंस्टाल बिट्स के मामले में ओएस से मेल खाता है, तब तक आप ठीक रहेंगे। लेकिन संकलक उस दृढ़ संकल्प को करने में असमर्थ है और आपको सचेत करने की कोशिश कर रहा है।
मुझे एक कनेक्ट आलेख मिला इस पर त्रुटि को अक्षम करने के लिए एक संभावित परिवर्तन (मैं प्रोज फ़ाइल में मान रहा हूं) शामिल है:
<PropertyGroup>
<ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>None</ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>
</PropertyGroup>
किसी भी स्थिति में, आपका "AnyCPU" एप्लिकेशन आपके सर्वर पर तब तक ठीक चलेगा जब तक कि आपके द्वारा सर्वर पर स्थापित 32 बिट odp.net आपके द्वारा संदर्भित 64 बिट odp.net के समान संस्करण है (या प्रकाशक नीतियां ठीक से स्थापित हैं बाद के संस्करण पर पुनर्निर्देशित करें)। किसी भी भ्रम को खत्म करने के लिए मैं आम तौर पर "झूठी" के संदर्भ में "स्थानीय कॉपी करें" सेट करता हूं। दूसरे शब्दों में, मैं डीएलएल के एक विशिष्ट संस्करण के खिलाफ संकलित करता हूं लेकिन इसे जीएसी से जो कुछ भी हल करता है उसके खिलाफ चलने देता है (जिसमें प्रकाशक नीतियां शामिल हैं जिनमें अधिकांश odp.net इंस्टॉलेशन शामिल हैं)।
आप 32 बिट अनुप्रयोगों को चलाने/डीबग करने के लिए या विजुअल स्टूडियो के लिए ओरेकल डेवलपर टूल्स के साथ "विजुअल स्टूडियो के लिए ओरेकल डेवलपर टूल्स के साथ" आने वाले एकीकृत टूलिंग का उपयोग करने के लिए अपनी देव मशीन (आदर्श रूप से एक ही संस्करण फिर से) पर 32 बिट odp.net भी स्थापित कर सकते हैं। स्टूडियो।
जो कुछ भी कहा गया है, यहां आंख से मिलने के अलावा और भी बहुत कुछ है। यदि आपका एप्लिकेशन वास्तव में चल रहा है (जिसका अर्थ है "यह केवल एक चेतावनी है"), 64 बिट के रूप में, यह आपके 32 बिट इंस्टॉलेशन का उपयोग नहीं कर रहा है। मुझे लगता है कि आपकी मशीन में पहले से ही 64 बिट संस्करण स्थापित है (एकाधिक ऑरेकल घर)।