IHttpControllerSelector和IHttpControllerActivator有什么区别?

时间:2016-04-28 18:40:26

标签: asp.net-mvc asp.net-web-api dependency-injection

IHttpControllerSelector和IHttpControllerActivator有什么区别?

1 个答案:

答案 0 :(得分:5)

IHttpControllerSelector用于将单个HttpRequestMessage与应处理该消息的控制器进行匹配。它返回IHttpControllerDescriptor,它基本上描述了需要激活的控制器Type

IHttpControllerActivatorHttpControllerSelector之后运行,并使用描述符激活所描述的控制器(即实例化控制器Type)。

这两种方法通常都是针对特定的依赖注入框架进行定制和替换的,因为每个DI框架的工作方式都有所不同。但是,我已经取代IHttpControllerActivator取代了更高级的东西。