配置复杂路由不生效是由于优先级的关系,应该把默认路由放在最后。

config.Routes.MapHttpRoute(
                name: "DynamicApi",
                routeTemplate: "DataApi/{id}/{excute}",
                defaults: new { controller = "DataApi", action = "Excute" }
            );

            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "{controller}/{action}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );

参考文章:https://stackoverflow.com/questions/21140305/web-api-routing-with-multiple-parameters

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据