从外部提供DI容器,用于自托管的.NET Core MVC应用程序

时间:2017-06-23 13:53:02

标签: c# dependency-injection autofac asp.net-core-1.0

是否可以在WebHostBuilder中提供已配置的DI容器?

 var host = new WebHostBuilder()
                .UseKestrel()
                .UseContentRoot(Directory.GetCurrentDirectory())
                .UseIISIntegration()
                .UseStartup<Startup>()
                .UseApplicationInsights()
                .Build();

            host.Start();

我有单个对象运行/管理一些后台作业。我希望通过DI容器(例如Autofac)进行管理,它通过REST API公开管理接口。

我的想法是在WebHostBuilder之外创建DI容器,从中获取Singleton,启动它的作业管理线程,并将其作为对Controller的依赖项传递给WebHostBuilder,以通过REST接口公开它。

是否有可能实现或我的方法完全错误?

0 个答案:

没有答案