当我尝试制作MVC6应用程序时,我想到了将ViewModel
图层添加到我的网站。所以我想用这样的服务来实现它:
public void ConfigureServices(IServiceCollection services)
{
services.AddViewModels();
}
所以我得到了一个对应模型的视图,用法如下:
public IActionResult Detail([FromService]ArticleDetailViewModel vm)
{
return View(vm);
}
ArticleDetailViewModel
应由工厂自动生成,就像其他服务项一样。但我认为将所有ViewModel添加到ServiceProvider并不是一个好方法。
然后是问题: 我怎样才能做到这一点?
我已经知道控制器是由每个请求DefaultControllerFactory
创建的。但是我不知道工厂何时注册了服务以及请求如何调用创建方法?
或者我可能走错了路? 非常感谢。