gpt4 book ai didi

asp.net - 处理潜在覆盖后,如何遵循 ASP.NET MVC 的 "default"HttpHandler?

转载 作者:行者123 更新时间:2023-12-04 07:07:27 24 4
gpt4 key购买 nike

我需要为 MVC 实现一个自定义处理程序,它让我首先查看 URL 请求,以确定它是否应该在将 URL 提交给路由引擎之前重写 URL。任何模式都是重定向的候选者,因此我需要在标准 MVC 路由引擎查看它之前拦截 URL 请求。

在查看了一大堆为 ASP.NET MVC 实现自定义路由的示例、博客、文章等之后,我仍然没有找到适合我的场景的用例。我们现有的 ASP.NET 实现可以正常工作,但是当没有匹配覆盖时,我们将返回“标准”处理程序。我们目前使用的技术与这篇 MSDN 文章中描述的技术非常相似:http://msdn.microsoft.com/en-us/library/ms972974.aspx#urlrewriting_topic5它说“HTTP 处理程序工厂可以返回 System.Web.UI.PageParser 类的 GetCompiledPageInstance() 方法返回的 HTTP 处理程序。(这与内置的 ASP.NET 网页 HTTP 处理程序工厂 PageHandlerFactory 所采用的技术相同,有效。)”。

我想弄清楚的是:如果当前请求与任何动态配置的(通过数据表)值不匹配,我如何首先查看传入的请求,然后将其传递给 MVC 路由?

最佳答案

您需要:

  • 不使用 global.asax 中的标准 MapRoute 扩展方法(这是设置路由处理程序的内容)。
  • 相反,编写您自己的路由子类型,like this .
  • 关于asp.net - 处理潜在覆盖后,如何遵循 ASP.NET MVC 的 "default"HttpHandler?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/908910/

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