我在视图文件中有类似
的内容 @Html.ActionLink("Details", "Details", new { id=item.RuleId }) |
@Html.ActionLink("Edit", "Edit", new { id = item.RuleId }) |
@Html.ActionLink("Delete", "Delete", new { id = item.RuleId })
这是有效的,但是当我把它改成像
这样的东西时 @Html.ActionLink("Details", "Details", new { id=item.RuleId }) |
@if( something )
{
Html.ActionLink("Edit", "Edit", new { id = item.RuleId });
Html.ActionLink("Delete", "Delete", new { id = item.RuleId });
}
它停止显示第二个和第三个项目(虽然正在进入分支)。
任何想法为什么?
答案 0 :(得分:9)
Html.ActionLink
会返回包含IHtmlString
标记的<a>
对象
它本身没有做任何事情。
您的代码忽略了此结果,因此没有任何反应。
您需要使用@
字符将结果打印到页面。
答案 1 :(得分:0)
用以下代码替换您的代码:
@Html.ActionLink("Details", "Details", new { id=item.RuleId }) |
@if( something )
{
@Html.ActionLink("Edit", "Edit", new { id = item.RuleId })
@Html.ActionLink("Delete", "Delete", new { id = item.RuleId })
}