सीधा समाधान:आपको Oracle क्लाइंट को प्लेटफॉर्म (x64 मशीन पर x64) के अनुसार स्थापित करना चाहिए। इसका कारण यह है कि आपका .NET एप्लिकेशन AnyCPU कॉन्फ़िगरेशन में निर्मित होने की बहुत संभावना है, जिसका अर्थ है कि यह x64 प्लेटफॉर्म पर x64 एप्लिकेशन के रूप में चलेगा। यह तब केवल x64 देशी पुस्तकालयों को लोड कर सकता है...
ध्यान दें कि जब Oracle की बात आती है, तो मैं Oracle Instant Client का उपयोग करना पसंद करता हूं :
- आपको लक्ष्य मशीनों पर कुछ भी स्थापित करने की आवश्यकता नहीं है (देव बॉक्स सहित!)।
- आप यह सुनिश्चित कर सकते हैं कि आपका एप्लिकेशन आपके द्वारा चुने गए विशिष्ट क्लाइंट (संस्करण, x86/x64) के साथ चलेगा।
- आप एक ही कंप्यूटर पर विभिन्न क्लाइंट संस्करणों के साथ कई एप्लिकेशन आसानी से काम कर सकते हैं।
- एक नकारात्मक पहलू के रूप में, यह आपके आवेदन (~19Mb न्यूनतम) में एक महत्वपूर्ण भार जोड़ता है।
चेक C# को Oracle डेटाबेस से जोड़ने के लिए न्यूनतम क्लाइंट फ़ुटप्रिंट क्या आवश्यक है? अधिक जानकारी के लिए।
आपके विशेष मामले में, मैं एक विजुअल स्टूडियो प्रोजेक्ट स्थापित करने की अनुशंसा करता हूं जो x86 और साथ ही x64 मशीनों पर काम करेगा:मेरे ब्लॉग पोस्ट की जांच करें विजुअल स्टूडियो में Oracle इंस्टेंट क्लाइंट . फिर यहां एक WiX को कॉन्फ़िगर करने के तरीके पर मार्गदर्शन दिया गया है Oracle इंस्टेंट क्लाइंट के लिए पैकेज x86 या x64 मशीनों को लक्षित करना। यदि आप किसी अन्य परिनियोजन रणनीति का उपयोग करते हैं, तो सुनिश्चित करें कि आप लक्ष्य प्लेटफ़ॉर्म के अनुसार सही क्लाइंट भेजते हैं।