きな粉もち.net

.NET関連仕事に携わっています。OSSのソースを読んで気がついたことを中心に呟いたりブログに投稿したりしています。最近はUiPathを使ったRPAも研究中。気軽にフォローやツッコミよろしくおねがいします! Gitはここを使っています https://github.com/kinakomotitti

C# × DbProviderFactory × DBクライアントに依存しないDBアクセス処理についてまとめてみた

この記事の目的

この記事では、
DBクライアントに依存しないDBアクセス処理の実装をまとめること
を目的としています。
単純に実装方法がわからなかったので、まとめておきます。

本題

★DbProviderFactoryの取得

DbProviderFactoryを使ってDBクライアントに依存しないDBアクセス処理を実装する。
※以下のドキュメントを参考にする。
DbProviderFactory の取得 | Microsoft Docs

★接続文字列の取得

接続文字列も、設定ファイルに記述するようにしたい場合は、以下の処理を実装する。
※以下のドキュメントを参考にする。
接続文字列ビルダー | Microsoft Docs


★DbProviderFactoryの取得

接続するためには、必要に応じて以下のDLLを参照する。
○ System.Data.Odbc
○ System.Data.OleDb
○ System.Data.OracleClient
○ System.Data.SqlClient
  ※必要に応じて、Nugetから取得する。

まとめ

プロバイダに依存しない汎用的なDBアクセス処理を実装する場合は、
DbProviderFactoryを利用する。
接続文字列は、System.ConfigurationのConnectionStringsを利用することで、
設定ファイルに記述した接続文字列を利用することができる。
※設定ファイルに出すだけなら、AppSettingsでもいいかもと思いましたが、
おそらく邪道なのだろう・・・