我的一个查看页面中有以下位置:
@* Html.Partial("Form")*@
@{
var role = Convert.ToInt32(Session["Role"]);
if (role == 2)
{
Html.Partial("Form");
}
}
Html.Partial("Form")
在if语句之外时可以正常工作,并且可以使一切正常。但是,当在
if
块内部不呈现任何内容时,如果命中了语句,这是真的,调试器eves读取该函数并进入Form Partial view
并遍历其中的每一行,但最后页面上没有输出。请帮助
最佳答案
在代码块中时,应使用RenderPartial方法。
Html.RenderPartial("Form");
Html.Partial返回一个HtmlString,如果它不在代码块内,则将呈现到页面。在您的情况下,Razor解析您的视图并将结果返回到您的代码中。由于您不执行任何渲染操作,因此不会获得输出。
关于.net - HTML.Partial在if语句下不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15699522/