我有以下实现:
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,但保持容器不可知.