任何人都可以帮助我了解服务在 HttpConfiguration 中如何工作吗?它们能完成哪些过滤器和消息处理程序无法完成的任务?此外,他们似乎没有实现任何接口。它们在管道中的哪些地方使用?
从此链接中,配置 ASP.NET Web API 2 指出:
服务集合不是通用的服务机制 发现或依赖注入。它只存储以下服务类型 Web API 框架已知。
例如,它可以用于用自定义的 HTTP 控制器选择器替换默认的 HTTP 控制器选择器。因此,您可以创建自己的控制器选择器(继承自
DefaultHttpControllerSelector
)来动态选择控制器并通过向 WebApiConfig 文件添加代码来替换现有服务。
config.Services.Replace(typeof(IHttpControllerSelector), new MyCustomControllerSelector(config));