[英]Register Multiple Components for Single Interface Using Castle Windsor
I am trying to register multiple NHibernate ISessions (multiple databases) by using the code below. 我正在尝试使用下面的代码注册多个NHibernate ISessions(多个数据库)。 I am getting "There is a component already registered for the given key Castle.MicroKernel.Registration.GenericFactory`1[[NHibernate.ISession, NHibernate, Version=2.1.0.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4]]" as the error message when the container is trying to be built. 我收到错误消息“已经为给定的Castle.MicroKernel.Registration.GenericFactory`1 [[NHibernate.ISession,NHibernate,Version = 2.1.0.4000,Culture = neutral,PublicKeyToken = aa95f207798dfdb4]]注册了组件”作为错误尝试构建容器时出现此消息。
container.Kernel.Register(
Component.For<ISession>().LifeStyle.Transient
.UsingFactoryMethod(() => sessionFactoryOne.OpenSession()
).Named("ISession+sessionOne"));
container.Kernel.Register(
Component.For<ISession>().LifeStyle.Transient
.UsingFactoryMethod(() => sessionFactoryTwo.OpenSession())
.Named("ISession+sessionTwo"));
This was fixed a couple of months ago . 这是几个月前解决的 。 Please get a recent build from the buildserver . 请从buildserver获取最新版本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.