Seperti yang Anda katakan, itu hanya peringatan. Karena ODP.net bukan "AnyCPU", peringatan tersebut menunjukkan bahwa Anda memiliki ketergantungan yang tidak akan beradaptasi dengan sistem operasi host seperti halnya aplikasi Anda sendiri. Selama instalasi odp.net Anda cocok dengan os dalam hal bit, Anda akan baik-baik saja. Tetapi kompilator tidak dapat membuat keputusan itu dan mencoba memberi tahu Anda.
Saya memang menemukan artikel penghubung tentang ini yang mencakup kemungkinan perubahan (saya berasumsi ke file proj) untuk menonaktifkan kesalahan:
<PropertyGroup>
<ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>None</ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>
</PropertyGroup>
Bagaimanapun, aplikasi "AnyCPU" Anda akan berjalan dengan baik di server Anda selama odp.net 32 bit yang Anda instal di server adalah versi yang sama dengan odp.net 64 bit yang Anda referensikan (atau kebijakan penerbit diinstal dengan benar ke redirect ke versi yang lebih baru). Untuk menghilangkan kebingungan, saya biasanya mengatur "Salin Lokal" untuk referensi ke "salah." Dengan kata lain, saya mengkompilasi terhadap versi tertentu dari dll tetapi membiarkannya berjalan melawan apa yang diselesaikannya dari GAC (yang mencakup kebijakan penerbit yang disertakan oleh sebagian besar instalasi odp.net).
Anda juga dapat menginstal odp.net 32 bit di mesin dev Anda (idealnya versi yang sama lagi) untuk menjalankan/men-debug aplikasi 32 bit atau menggunakan perkakas terintegrasi yang disertakan "dengan Oracle Developer Tools for Visual Studio" di dalam Visual Studio.
Semua yang dikatakan, ada lebih dari memenuhi mata di sini. Jika aplikasi Anda sebenarnya sedang berjalan (yang tersirat dengan "itu hanya peringatan"), sebagai 64 bit, daripada itu TIDAK menggunakan instalasi 32 bit Anda. Saya kira mesin Anda sudah menginstal versi 64 bit (beberapa rumah oracle).