![](/img/trans.png)
[英]ASP.NET MVC 5 Attribute Routing: Url.Action returns null when using multiple parameters
[英]MVC 5 Routeconfig Routing Url.Action returns null
我花了3个小时并没有成功。 我想不出正确的解决方案。
这就是我正在尝试并获得 null。 我的主页可以正常工作,但其他主页无法正常工作。
Url.Action("ShowDilKursuMenu","DilKursu") => 获取 null
我正在尝试从此代码 url 操作https://localhost:44313/dil-kurslari为我的父母 html 菜单获得这样的结果。 Html 子菜单有像https://localhost:44313/dil-kurslari/germany或Z5E056C500A1C4B6A7110B50D807/frankfurt-k://localhost:443
#region DilKursu
routes.MapRoute(
name: "DilKursuUlkeEyaletSehir",
url: "dil-kurslari/{ulke}/{eyalet}/{sehir}/{ilce}/{firma}",
defaults: new
{
controller = "DilKursu",
action = "ShowDilKursuMenu",
ulke = UrlParameter.Optional,
eyalet = UrlParameter.Optional,
sehir = UrlParameter.Optional,
ilce = UrlParameter.Optional,
firma = UrlParameter.Optional,
});
routes.MapRoute(
name: "DilKursuAll",
url: "dil-kursu/{ulke}/{eyalet}/{sehir}/{ilce}/{firma}/{kursAdi}",
defaults: new
{
controller = "DilKursu",
action = "DilKursuDetay",
ulke = UrlParameter.Optional,
eyalet = UrlParameter.Optional,
sehir = UrlParameter.Optional,
ilce = UrlParameter.Optional,
firma = UrlParameter.Optional,
kursAdi = UrlParameter.Optional,
});
#endregion
#region HomeIndex2
routes.MapRoute(
name: "HomeLang2",
url: "",
defaults: new { controller = "Home", action = "HomeIndex" }
);
#endregion
一件重要的事情是 DilKursuAll 命名路由需要所有这些参数。
你能在浏览器中试试这个,看看https://localhost:44313/DilKursu/DilKursuDetay/ Rest 我可以看到所有参数都是可选参数
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.