好依賴忍者的,這裏有一個你...Ninject:基於依賴鏈HOWTO設置綁定
我想改變Ninject建立基於我從內核請求的類型依賴的方式。
我有以下構造一個DbConnectionFactory類:
public DbConnectionFactory()
: this(MyDatabase.ConnectionString)
{
}
public DbConnectionFactory(string connectionString)
: this(DbProviderFactories.GetFactory("System.Data.SqlClient"), connectionString)
{
}
爲「默認」的結合,我想Ninject使用參數的構造函數:
this.Bind<IDbConnectionFactory>().To<DbConnectionFactory>();
某些類別在我的代碼需要Ninject提供connectionString參數。我試圖設置綁定像這樣:
this.Bind<IDbConnectionFactory>().To<DbConnectionFactory>().Only(
When.Context.InstanceOf(typeof(IRepository))).WithArgument(
"connectionString", MyOtherDatabase.ConnectionString);
但是,我只能得到Ninject使用默認的構造函數。
我必須錯過明顯的東西!