HTML未在Razor if内部呈现
本文关键字:内部 if 未在 Razor HTML | 更新日期: 2023-09-27 18:21:28
我在一个视图文件中有类似的东西
@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 });
}
它停止显示第二项和第三项(尽管正在进入分支)。
有什么想法吗?
Html.ActionLink
返回一个包含<a>
标记的IHtmlString
对象
它自己什么都不做。
您的代码将忽略此结果,因此不会发生任何事情。
您需要使用@
字符将结果打印到页面上。
用以下代码替换您的代码:
@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 })
}