C# 对定义的命名空间中的所有类使用Ninject.InSingletonScope()
我在类库中有一组存储库,它们必须是单例的。 它们与其他类以及创建为单例的类共享库 是否可以将Ninject配置为对所有匹配特定条件的类(例如,在特定命名空间中定义的类)自动使用InSingletonScope() 我有20到30个存储库,根据我的发现,我需要为每个存储库调用InSingletonScope() 当然,我可以通过反思来做到这一点,但我想知道是否有一种“自动方法”可以做到这一点:)这是由处理的。这是由处理的。来自:C# 对定义的命名空间中的所有类使用Ninject.InSingletonScope(),c#,singleton,ninject,ioc-container,C#,Singleton,Ninject,Ioc Container,我在类库中有一组存储库,它们必须是单例的。 它们与其他类以及创建为单例的类共享库 是否可以将Ninject配置为对所有匹配特定条件的类(例如,在特定命名空间中定义的类)自动使用InSingletonScope() 我有20到30个存储库,根据我的发现,我需要为每个存储库调用InSingletonScope() 当然,我可以通过反思来做到这一点,但我想知道是否有一种“自动方法”可以做到这一点:)这是由处理的。这是由处理的。来自: kernel.Bind(x=>x .FromThisAssembly
kernel.Bind(x=>x
.FromThisAssembly()中的
.SelectAllClasses().InNamespaceOf()中的
.BindAllInterfaces()
.Configure(b=>b.InSingletonScope());
来自:
kernel.Bind(x=>x
.FromThisAssembly()中的
.SelectAllClasses().InNamespaceOf()中的
.BindAllInterfaces()
.Configure(b=>b.InSingletonScope());
kernel.Bind(x => x
.FromThisAssembly()
.SelectAllClasses().InNamespaceOf<MyService>()
.BindAllInterfaces()
.Configure(b => b.InSingletonScope()));