aspnet mvc 路由被识别为文件的解决方案

背景

上面要做个健康检查功能,我的项目要加个url /monitor.action返回success文本。

 

开始的解决办法-添加路由

1
2
3
4
5
routes.MapRoute(
    name: "HealthCheck",
    url: "monitor.action",
    defaults: new { controller = "SysMonitor", action = "Index", id = UrlParameter.Optional }
);

  

 

问题

这个url在mvc里会识别为一个静态文件,不会走路由,如果使用 /monitor.action/这样访问倒是可以实现。But上面规定不能要后面的slash。

 

最终解决方案

 

在加了路由的基础上,再在web.config中的system.webServer节点的modules中加入下面这两句话

1
2
3
<remove name="UrlRoutingModule-4.0" />
     <add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" />
     

  

这样测试就通过了。

 

关于UrlRoutingModule-4.0的知识,请看:https://www.cnblogs.com/zhangxiaolei521/p/5691344.html 

1
<em id="__mceDel"> </em>
posted @   狂乱贵公子  阅读(238)  评论(0编辑  收藏  举报
编辑推荐:
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
阅读排行:
· 开发的设计和重构,为开发效率服务
· 从零开始开发一个 MCP Server!
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
· Ai满嘴顺口溜,想考研?浪费我几个小时
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
点击右上角即可分享
微信分享提示