0
Unity DIフレームワークを使用してASP.NET MVCアプリケーションを開発しています。私はシナリオ、異なるデータベースベースのURIセグメントを接続するWebアプリケーションを試しています。私はいくつかのオプションを試しましたが、成功していません。ASP.NET MVC 3 Unity DI - 実行時にパラメータを解決します。
私は、Gloabl.asaxファイルのApplication Loadイベントに1つのコンテナ内のすべてのオブジェクトを登録しています。単一のデータベースとの接続がうまく機能しています。
container.RegisterType<IContext, DbContext>(new PerRequestLifetimeManager(), new InjectionConstructor("data source=.; Initial Catalog=catalog1; User ID=sa; Password=xxxxxx;"));
しかし、URIパラメータに基づいて接続文字列を動的に変更したいとします。 http://www.domain.com/ABC
のように。 ABC
の場合は、別のデータベースに接続します。データベースに接続する前に、実行時に手動でDbContext
オブジェクトを再オープンするにはどうすればよいですか?または最良の代替オプションは何ですか?