自定义IHttpHandler可以恢复为默认请求处理吗?

时间:2014-04-23 13:14:46

标签: asp.net asp.net-routing ihttphandler

我正在编写一个自定义的HttpHandler来处理我正在编写的Web框架的Web请求,但是试图找到一种以编程的方式"忽略"如果没有匹配的url路由请求。我忽略的意思是,如果没有预定义的路由与传入的请求URL匹配,则默认为您使用原始ASP.Net Web应用程序时将获得的标准请求处理。

我能找到实际工作的唯一方法是删除特定路径的自定义http处理程序,例如:

<location path="Test">
    <system.webServer>
        <handlers>
            <remove name="DefaultHandler"/>
        </handlers>
    </system.webServer>
</location> 

我没有大量满足这个解决方案,并希望实现类似于MVC IgnoreRoute("...")的东西。挖掘这些来源虽然是一个吃力不讨好的任务,但我无法看到它实际上在做什么。

理想情况下,我想知道是否有可能以某种方式退出自定义http处理程序并让应用程序以默认方式处理它,或者找出MVC如何执行此操作。

有人有什么想法吗?

感谢。

1 个答案:

答案 0 :(得分:1)

我认为你不能在Httphandler中做到这一点。

考虑使用HttpModule。这也是MCV路由的工作原理。