在教程中使用产品服务的服务层构造函数进行验证如下所示:
ProductService(IValidationDictionary validationDictionary, IProductRepository repository)
它在默认控制器构造函数中的实例是这样创建的:
public ProductController()
{
_service = new ProductService(new ModelStateWrapper(this.ModelState), new roductRepository());
}
如果我想将 Unity 用于 DI,显然应该使用第二个构造函数。
public ProductController(IProductService service)
{
_service = service;
}
但是后来我不知道配置Unity来注入ProductServise的第一个参数,因为ModelStateWrapper使用来自控制器的ModelState,它是在控制器内部创建的,不能注入。是否可以将这种依赖注入ProductService?