gpt4 book ai didi

asp.net-mvc - T4MVC @Url.Action(MVC.Controller.Action()) 渲染 QueryString 中的 "?Area="参数

转载 作者:行者123 更新时间:2023-12-02 06:01:28 24 4
gpt4 key购买 nike

我正在将部分操作中的菜单直接渲染到布局,使用:

@Html.Action(MVC.Menu.Index())

此操作确定要渲染哪个菜单部分。例如,公共(public)菜单部分。在这些部分中,我还使用 T4MVC 来呈现链接:

<ul id="navHolder">
<li class="level1">
<ul class="mainMenu">
<li><b>@Html.ActionLink("Welcome", MVC.Home.Index())</b>
...

由于某种原因,T4MVC 渲染的 URL 末尾包含“?Area=”:

 <ul id="navHolder">
<li class="level1">
<ul class="mainMenu">
<li><b><a href="/home/index?Area=">Welcome</a></b>
...

我的项目中没有任何区域,并且我已将“IncludeAreasToken”设置设置为 false。奇怪的是,只有当我使用“@Html.Action”渲染部分时才会发生这种情况 - 如果我将其作为“@Html.Partial”拉入,则不会渲染参数并且链接是干净且正确的。 (但我不想将其呈现为部分内容,因此请不要将其作为建议提供;)

有人遇到过这种情况吗?

最佳答案

我以一种非常简单的方式解决这个问题,只需添加到不在区域空区域 route 的所有路线,如下所示:

routes.MapRoute(
"Default",
"{controller}/{action}/{i​d}",
new { controller = "Home", action = "Index", area = "", id = UrlParameter.Optional });

关于asp.net-mvc - T4MVC @Url.Action(MVC.Controller.Action()) 渲染 QueryString 中的 "?Area="参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6755729/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com