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>
我想要一个动态值。
我得到了这段代码,但它不起作用。它在 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>