我花了3个小时并没有成功。我想不出正确的解决方案。
这就是我正在尝试并获得空值的方法。我的主页可以正常工作,但其他主页无法正常工作。
Url.Action("ShowDilKursuMenu","DilKursu") => 为空
我正在尝试从 我的父 html 菜单的代码 url 操作https://localhost:44313/dil-kurslari中获得这样的结果。Html 子菜单有https://localhost:44313/dil-kurslari/germany或https://localhost:44313/dil-kurslari/germany/frankfurt
#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 命名路由需要所有这些参数。