【问题标题】:How does IIS recognize that request is for MVC Controllers or webforms Pages?IIS 如何识别该请求是针对 MVC 控制器或 Web 表单页面的?
【发布时间】:2013-06-06 09:29:52
【问题描述】:

当应用程序池收到请求时,它只是将请求传递给工作进程 (w3wp.exe)。工作进程“w3wp.exe”查找请求的 URL 以加载正确的 ISAPI 扩展。 ISAPI 扩展是 IIS 处理不同资源请求的方式。安装 ASP.NET 后,它会安装自己的 ISAPI 扩展 (aspnet_isapi.dll) 并将映射添加到 IIS。

Si 如果这是真的,我的问题是它如何识别要加载的扩展 为那个要求?? MVC / Web 表单?

IIS 何时何地知道请求是针对 MVC 或 WebForms 应用程序的? 框架如何决定哪些模块应该处理请求并决定在 MVC 中呈现页面内容或视图。

【问题讨论】:

    标签: asp.net-mvc iis webforms


    【解决方案1】:

    那么 IIS 是否知道该请求是针对 MVC 或 WebForms 应用程序的?

    它们都是 ASP.NET 应用程序,因此不需要识别。 aspnet_isapi.dll 完全能够为这两种类型的应用程序(实际上是一种称为 ASP.NET 的类型)提供服务。

    ASP.NET MVC 只是添加到 ASP.NET 管道的自定义处理程序。

    【讨论】:

      【解决方案2】:

      这一切都是关于标准 IHttpModule 和 IHttpHandler 基础设施的。在此处查看完整描述 Routing with ASP.NET Web Forms 和此处 How ASP.NET MVC Routing Works and its Impact on the Performance of Static Requests

      【讨论】:

        猜你喜欢
        • 2011-08-20
        • 1970-01-01
        • 2010-10-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-11-04
        相关资源
        最近更新 更多