SqlConnection
khusus untuk SQL Server. Anda perlu menggunakan NpgsqlConnection
untuk menggunakan koneksi Postgres, yang berarti Anda memerlukan referensi ke rakitan Postgres.
Tetapi Anda berniat untuk pindah ke penyedia lain di masa mendatang, jadi untuk meminimalkan dampak dari perpindahan itu, coba gunakan kelas dasar generik dalam kode Anda. Misalnya:
var connString = "Host=myserver;Username=mylogin;Password=mypass;Database=mydatabase";
using (DbConnection conn = new NpgsqlConnection(connString))
{
conn.Open()
using (DbCommand command = conn.CreateCommand())
{
// etc
}
}
Dengan cara ini, ketika Anda menukar, yang perlu Anda lakukan hanyalah mengganti NpgsqlConnection
di seluruh solusi Anda dengan SqlConnection
. Jika Anda ingin menggunakan DbProviderFactory (ada contoh bagus di sana) maka Anda bisa, tetapi pada dasarnya Anda hanya menyimpan sendiri pencarian/penggantian ini, menghapus referensi, dan merilis versi kode baru.
Saya menyarankan menempatkan string koneksi dalam file konfigurasi daripada kode (seperti yang ditunjukkan dalam pertanyaan) untuk menghindarinya di banyak tempat, dan membuatnya lebih mudah untuk diubah tanpa membangun kembali.
Dan tentu saja Anda mungkin harus memperbaiki detail spesifik implementasi di SQL itu sendiri.