MVC 涡轮机的寿命管理?
-
20-09-2019 - |
题
如何管理 mvc 涡轮机中服务的生命周期(使用 Unity)?
我有一个 ISearchService 实现 LuceneSearchService,它采用 IConfigurationService 和 ILoggerService。
目前我的搜索服务注册如下所示:
public class SearchServiceRegistration: IServiceRegistration
{
public void Register(IServiceLocator locator)
{
locator.Register<ISearchService, LuceneSearchService>();
}
}
我想保留在 Turbine 中创建实例的责任,但我希望它是一个单例。
或者换句话说,我如何定义生命周期?
解决方案
目前,涡轮钻头不允许进行生命周期管理,因为我认为这最适合您的容器。如果您有兴趣,可以使用我在这篇博文中定义的内容: 将您最喜爱的 IoC 注入 MVC 涡轮机
如果您同意在 IServiceRegistration 实现中公开您的容器,您可以执行以下操作: 黑客攻击以暴露您的注册中的特定 SL
如果我收到很多需要生命周期管理的请求,我会将其添加到 Turbine 的 V3 中。
不隶属于 StackOverflow