下面的代码(在.cshtml文件中)会导致菜单在文档流之外呈现,即源代码中html标记上方的第一行
@{
Html.Menu(
Menu.Begin(new[]
{
Menu.Link(Url.Action("action1", new { controller="controller" }), "Action1"),
Menu.Link(Url.Action("action2", new { controller="controller" }), "Action2")
}));
}
然而在webforms项目中,以下工作:
<% Html.Menu(
Menu.Begin(new[]
{
Menu.Link(Url.Action("action1", new { controller="controller" }), "Action1"),
Menu.Link(Url.Action("action2", new { controller="controller" }), "Action2")
})); %>
我相信这两种语法应该会产生相同的结果。
答案 0 :(得分:0)
@Html.Menu(
Menu.Begin(new[]
{
Menu.Link(Url.Action("action1", new { controller="controller" }), "Action1"),
Menu.Link(Url.Action("action2", new { controller="controller" }), "Action2")
}))
这应该有效..删除大括号{}
答案 1 :(得分:0)
您应该认为@()等同于&lt;%=%&gt;转换为剃刀时,而不是@ {}。