繁体   English   中英

MVC 5 Routeconfig 路由 Url.Action 返回 null

[英]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/germanyZ5E056C500A1C4B6A7110B50D807/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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM