Я провожу 3 часа и не добился успеха. Я не могу найти правильное решение.
Это то, что я пытаюсь и получаю ноль. Моя домашняя страница работает, но другие не работают.
Url.Action ("ShowDilKursuMenu", "DilKursu") => получить ноль
Я пытаюсь получить какэто из этого кода действия URL https://localhost:44313/dil-kurslari для моего родительского HTML-меню. Дочернее меню 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
Одна важная вещь - DilKursu. Для всех именованных маршрутов требуются все эти параметры.