0

我花了3个小时并没有成功。我想不出正确的解决方案。

这就是我正在尝试并获得空值的方法。我的主页可以正常工作,但其他主页无法正常工作。

Url.Action("ShowDilKursuMenu","DilKursu") => 为空

我正在尝试从 我的父 html 菜单的代码 url 操作https://localhost:44313/dil-kurslari中获得这样的结果。Html 子菜单有https://localhost:44313/dil-kurslari/germanyhttps://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 命名路由需要所有这些参数。

4

1 回答 1

0

你可以在浏览器中试试这个并查看 https://localhost:44313/DilKursu/DilKursuDetay/ Rest 我可以看到所有参数都是可选参数

于 2019-11-04T00:40:48.673 回答