C# · 12月 26, 2021

c# – 如何在类库项目中使用Autofac?

我有以下实现: private INewsRepository newsRepository;public NewsService(INewsRepository newsRepository){ this.newsRepository = newsRepository;}

这项服务与我的网页项目分开进行.在哪里和如何指定依赖注入?我还需要将其放在我的global.asax文件中吗?如果这项服务使用我的其他应用程式呢?

解决方法 您应该仅从应用程序的根目录(global.asax)引用容器.这被称为 Register Resolve Release pattern.

您正确使用构造函数注入确保您可以从其他应用程序重用NewsService类,而不需要其他应用程序使用特定的DI容器(或任何一个).

这是一个很好的开始,在designing the service in a DI Friendly manner,但保持容器不可知.