私は現在、ASPの.Net MVC 3アプリケーションを使用して、データベース内の特定のメタデータテーブルのセットに対していくつかのデータベース操作を行っています。私は基本的に、アプリケーションからの挿入、更新の削除などを行っています。ただし、これらのメタデータ・テーブルを異なるデータベース(および可能性の高いサーバー)に移行することで、クライアント間で同じメソドロジを使用できるようにします。C#アプリケーションでのサーバー+データベース接続の切り替え?
今、Linq2Sqlを使用して、これらの特定のメタデータテーブルのORMを生成しています。その目的は、同じアプリケーションを使用してサーバーとデータベース間でデータを操作することです。このためのベストプラクティス/アプローチは何ですか?
私が考えた最も簡単な解決策は、接続文字列を操作してDataContext
に渡すためにユーザー入力(サーバー+データベース名+ユーザーID +パスワード)を使用できるDataContext
のコンストラクタです。フレームワークはすべてのデータベースとサーバーで同じである必要があるため、理論的にはうまくいくはずです。しかし、私は変更された接続文字列を維持するための最良の場所(セッション?クッキー?)ではありません。
.NETアプリケーションでこの種のサーバー/データベースの切り替えを回避するにはどうすればよいですか?
これは内部のサイトになるので、セキュリティは大きな問題になることはありません。私は、db切り替えを行うより良い方法がないことを確認したかったのです。 – Rondel