gpt4 book ai didi

asp.net-mvc - 将 HttpHandler 添加到 MVC 应用程序

转载 作者:行者123 更新时间:2023-12-04 20:09:39 28 4
gpt4 key购买 nike

我有一个 MVC4 应用程序,我添加了一个 HttpHandler :

<system.web>
...
<httpHandlers>
<add path="Files" verb="*" type="MyHttpHandler" />
</httpHandlers>
</system.web>

我也忽略了 RegisterRoutes中的相关路径以便 MVC 不处理对"file"的请求:
routes.IgnoreRoute("Files/{*pathInfo}");

问题在于 MyHttpHandler仅针对对"file"的请求调用,而不针对其任何子文件夹或子文件夹。

我试过使用 <location>元素,但让它工作意味着您将在“路径”属性中硬编码应用程序的虚拟路径(例如, <location path='MyApp\Files'> )。

使用什么正确方法来允许对"file"及其任何子文件夹(以及这些文件夹的子文件夹等)的所有请求路由到 MyHttpHandler ?

最佳答案

从头开始... <location>似乎工作正常。但是,您同时需要 <web><webServer>条目以确保它适用于 IIS 和 Visual Studio 开发服务器。例如:

<location path="Files">`
<system.webServer>
<handlers>
<add name="MyHandler" path="*" verb="*" type="MyHttpHandler" />
</handlers>
</system.webServer>
<system.web>
<httpHandlers>
<add path="*" verb="*" type="MyHttpHandler" />
</httpHandlers>
</system.web>
</location>

关于asp.net-mvc - 将 HttpHandler 添加到 MVC 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19849442/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com