2011-04-18 11 views
2

一般的なNinjectの使用法のアドバイスが必要です。設定ファイルからNinjectでXMLデータプロバイダとSQLを選択する

私は、インターフェイスIDataProviderと2つの実装XmlProvider:IDataProviderOracleSqlProvider:IDataProviderを持っています。

私はインターフェイスの実装をインスタンス化するためにNinjectを使用したいと考えています。これはapp.configに何とか定義されています。

質問:

  1. はapp.configでユーザーに特定のものを実装を定義するための最良の方法ですか?
  2. Ninject 2がコードから優先バインディングを自動的に読み込む方法はありますか?
  3. XMLプロバイダがコンストラクタでパラメータを必要としないのに対して、SQLに接続文字列が必要な場合はどうなりますか?これはapp.configの宣言とNinject Moduleのさらなるインスタンス化にどのように影響しますか?

答えて

1

あなたのsceanrioでの最良の方法は、app.configから情報を取得し、適切なプロバイダを返すプロバイダを実装することです。これにより、接続文字列を渡すこともできます。

+0

これはNinjectとどのように関連していますか?プロバイダとして共通のクラスを参照している場合、それは手作業による依存性注入になります。私はNinjectを使用しても構わない。 –

+1

プロバイダはNinjectクラスです。使用法:バインド().ToProvider () およびクラスXProvider:プロバイダ .... –

関連する問題