微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何覆盖 .ASP.NET Core 5 中的路由?

如何解决如何覆盖 .ASP.NET Core 5 中的路由?

我想覆盖 ASP.NET Core 5 中的路由

我试过这个,但它不起作用

var lastExistingRoute= routeBuilder.Routes.FirstOrDefault(x => ((Route)x).Name == "HomePage");
            routeBuilder.Routes.Remove(lastExistingRoute);
            routeBuilder.MapRoute("HomePage","",new { controller = "CustomPage",action = "Homepage",});


  var lastDownloadRoute=routeBuilder.Routes.FirstOrDefault(x => ((Route)x).Name == "GetDownload");
            routeBuilder.Routes.Remove(lastDownloadRoute);
            routeBuilder.MapRoute("GetDownload","download/getdownload/{guid}/{agree?}",new { controller = "AzTechProduct",action = "GetPayed",});

解决方法

创建具有高不同显示顺序的相同路线对我有用

好在插入同名的新路由时不会抛出任何异常

 public void RegisterRoutes(IEndpointRouteBuilder endpointRouteBuilder)
        {
           
            endpointRouteBuilder.MapControllerRoute("NewCheckout","onepagecheckout",new { controller = "NewCheckout",action = "OnePageCheckout" });
                    
        }

       
            return string.Empty;
        }

    public int Priority
        {
            get
            {
                return 100;
            }
        }
    }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。