QuillとS2Dao.NETで、データベース接続文字列を動的に変更する
via. http://d.hatena.ne.jp/senbei3/20090410
app.configのquillセクションにはデータベース情報(
ASP.NETだとweb.configを暗号化すればよいらしいけれどWindowsフォームアプリケーションではそうもいかない。
というわけで、app.configのDB接続文字列にはユーザー名とパスワードは書かずにおいて、アプリ実行時に動的に差し込む方法。当然DBアクセス前に行う必要がある。例えばメインフォームのLoadイベントでやる場合。
メインフォームのメンバ変数に以下を追加。
Protected _dataSourceDict As SelectableDataSourceProxyWithDictionary
メインフォームのLoadイベントに以下を記述。
'DIでデータソース辞書を取得 QuillInjector.GetInstance.Inject(Me) 'app.configのquillセクションで定義したデータソースを取得 Dim ds As DataSourceImpl = _dataSourceDict.DataSourceCollection("sampleDb") 'データベース接続文字列にユーザー名とパスワードを追加 ds.ConnectionString &= ";user id=username;password=mypass"
これで実行時にユーザー名とパスワードを動的に設定できる。