ASP.NET MVC4 アプリケーションをセットアップしており、Ninject を DI コンテナーとして使用しています。
以前のプロジェクトでは、レジストリで次の設定でStructureMapを使用しました。
For<IAutoPersistenceConfiguration>()
.Use<Sql2008AutoPersistenceConfiguration>()
.Ctor<string>("connectionString")
.Is("SomeConnectionStringHere");
For<ISessionSource>()
.Singleton()
.Use(x => new SessionSource(x.GetInstance<IAutoPersistenceConfiguration>().Build()));
今、私はNinjectで同様のセットアップを試みます。これまでの私の試みは次のとおりです。
Bind<IAutoPersistenceConfiguration>()
.To<Sql2008AutoPersistenceConfiguration>()
.WithConstructorArgument("connectionString", "SomeConnectionStringHere");
Bind<ISessionSource>()
.ToMethod(x => new SessionSource(
x.Kernel.Get<IAutoPersistenceConfiguration>().Build())).InSingletonScope();
これを実行すると、FluentConfigurationException が発生します。
SessionFactory の作成中に、無効または不完全な構成が使用されました。
他のクラスはすべて同じです。IAutoPersistenceConfiguration と Sql2008AutoPersistenceConfiguration はすべて以前と同じです。NHibernate と FluentNHibernate のバージョンも以前と同じです。
私は間違って何をしていますか?