mvc涡轮机的终身管理?

时间:2009-12-17 14:39:03

标签: c# unity-container ioc-container object-lifetime turbine

如何在mvc turbine(使用Unity)中管理我的服务的生命周期?

我有一个ISearchService实现LuceneSearchService,它接受IConfigurationService和ILoggerService。

目前我的搜索服务注册如下:

public class SearchServiceRegistration: IServiceRegistration
{
    public void Register(IServiceLocator locator)
    {
        locator.Register<ISearchService, LuceneSearchService>();
    }
}

我想保留在Turbine中创建实例的责任,但我希望它是一个单例。

或者换句话说,我该如何定义生命周期?

1 个答案:

答案 0 :(得分:1)

目前Turbine钻头不允许进行寿命管理,因为我认为这是最适合您的容器的工作。如果您有兴趣,可以使用我在此博客文章中定义的内容:Injecting Your Favorite IoC Into MVC Turbine

如果您可以在IServiceRegistration实施中公开容器,那么可以执行以下操作:HACK to expose your specific SL within your registration

如果我收到很多关于终身管理需求的请求,我会将其添加到V3 of Turbine。