首先说说它的机制
处理HTTP请求并生成响应是一个很长的过程。路由只是这个过程的第一步。路由过程的最终结果是一个控制器。它将处理没有映射到物理静态文件的请求。
如下图
操作调用程序,是核心,主要负责协调所有必要的步骤来处理请求,操作调用程序接受控制器工厂和控制器上下文,后者是一个容器对象,包含了路由数据和HTTP请求信息,
操作调用程序使用反射来创建选定控制器类的实例以及调用选定的方法,调用程序还会读取HTTP上下文,路由数据和系统的DI容器
处理操作结果
控制器方法的操作结果是一个实现了IActionResult接口类,针对控制器方法可能想要返回的输出类型,如:HTML,Json,文本,二进制内容和特定的HTTP响应,
该接口只有一个方法 ExecuteResultAsync。
操作调用程序调用这方法,将数据嵌入要处理的特定操作结果对象中。执行操作结果的最终效果是写入HTTP响应输出筛选器。
然后,操作调用程序运行其内部管道并返回响应,。