我有一个ASP.Net MVC 4视图,它应该有条件地呈现一个ActionLink。但是,ActionLink不会在最终输出中呈现。为了诊断问题,我在所需的ActionLink之前和之后添加了文本,并在if
正文之外复制了ActionLink代码。
结果是if
正文之外的ActionLink代码以及之前/之后的文本呈现但不是我真正想要的ActionLink。
@Html.ActionLink("NEXT", "_NextPage")
@if (true /*!Model.IsFinalPage*/) {
<text>Pre</text>
Html.ActionLink("NEXT", "_NextPage");
<text>Post</text>
}
输出:
NEXT Pre Post
(NEXT是一个合适的链接)
答案 0 :(得分:5)
action-link需要@在这里工作。
在razor中,普通的Html.ActionLink 返回 html-string,但是如果没有@,它就不会被写入缓冲区。所以
@Html.ActionLink
与
相同Response.Write(Html.ActionLink);