ASP.NET 菜单的 MVC 动态操作链接显示长度而不是实际值

ASP.NET MVC dynamic Actionlinks for menu show length instead of actual value

我想要一个动态值。

我得到了这段代码,但它不起作用。它在 url 中显示长度,而不是我给出的参数:

@model IEnumerable<WebInboxTool.Models.MenuItem>

<div>
@foreach (var item in Model)
{
  @Html.ActionLink(item.Name, item.ActionName, item.ControllerName,item.Parameters, null);
}
</div> 

菜单项:

    public class MenuItem
{
    public string Name { get; set; }
    public string ActionName { get; set; }
    public string  ControllerName{ get; set; }
    public object Parameters { get; set; }

}

}

将在其中呈现的布局页面:

<div id="menu" class="menu">
    <div class="menu-head">
        <h2>Inbox Tool</h2>
    </div>

    @{ Html.RenderAction("MailboxMenu", "PartialMenu"); }
</div>

看来你的操作link是错误的。

@Html.ActionLink("Link text", "action", "controller", new { id = something }, null)

对于你的情况,你可以这样做。

<div>
@foreach (var item in Model)
{
 @Html.ActionLink(item.Name, item.ActionName, item.ControllerName, new { id = item.Parameters }, null);
}
</div>