c#-仅在特定参数时匹配路由
作者:互联网
我正在尝试创建仅在URL中使用特定参数时才匹配的路由.
例如:
routes.MapRoute(
name: "BannerAds",
url: "Go/{Web}",
defaults: new { controller = "CommunicationsAlias", action = "BannerAds", web = UrlParameter.Optional }
);
我希望URL匹配http://www.domain.com/Go/Web?=111222
但不适用于http://www.domain.com/Go/Advertising
如何更改路线以这种方式运行?
解决方法:
您需要在路由中将那部分url设为静态,然后:
routes.MapRoute(
name: "BannerAds",
url: "Go/Web",
defaults: new { controller = "CommunicationsAlias", action = "BannerAds" }
);
然后将那条路线放在您更一般的路线上方:
routes.MapRoute(
name: "BannerAds",
url: "Go/{Web}",
defaults: new { controller = "CommunicationsAlias", action = "BannerAds", web = UrlParameter.Optional }
);
标签:asp-net-mvc-4,asp-net,c,asp-net-mvc,asp-net-mvc-3 来源: https://codeday.me/bug/20191123/2066779.html