所以我在我的项目中有以下路线,我想在这里做的是使用一个看起来相似的路线网址,但根据提供的参数将其引导到两个不同的操作,如果给定的参数是一个字符串,它应该选择Search
路线,如果该参数是一个数字/整数,而不是它应该选择的GetCategory
路线,为了实现这一点,我在此处通过 SO 寻求一些现有的在线帮助后编写了以下代码,但这似乎没有按预期工作。
无论参数值是什么,它总是选择列表中最先出现的路径。
//routes.MapRoute("GetCategory", "{pId}", new { controller = "Student", action = "Post", pId = @"^\d{1,3}$" });
routes.MapRoute("Search", "{category}", new { controller = "Student", action = "Search", category = UrlParameter.Optional });
routes.MapRoute("GetCategory", "{pId}", new { controller = "Student", action = "Post", pId = @"^\d{1,3}$" });
任何人都可以帮我解决我在这里想念的东西吗?