SqlConnection
SQLServerに固有です。 NpgsqlConnection
を使用する必要があります Postgres接続を使用するには、Postgresアセンブリへの参照が必要になります。
ただし、将来的に別のプロバイダーに移動する予定であるため、その移動の影響を最小限に抑えるために、コードで汎用基本クラスを使用してみてください。例:
var connString = "Host=myserver;Username=mylogin;Password=mypass;Database=mydatabase";
using (DbConnection conn = new NpgsqlConnection(connString))
{
conn.Open()
using (DbCommand command = conn.CreateCommand())
{
// etc
}
}
このように、スワップオーバーするときに行う必要があるのは、NpgsqlConnection
を置き換えることだけです。 SqlConnection
を使用してソリューション全体で 。 DbProviderFactory> (そこに良い例があります)それならできますが、基本的には、この1回の検索/置換を保存し、参照を削除して、新しいバージョンのコードをリリースするだけです。
パッティングをお勧めします構成ファイル内の接続文字列 (質問に示されているように)コードではなく、複数の場所に配置されることを避け、再構築せずに簡単に変更できるようにします。
そしてもちろん、SQL自体の実装固有の詳細を修正する必要があるかもしれません。