这有效:
@if (ViewBag.SkipPhone == null)
{
<span>@Html.LabelFor(model => model.Phone)</span>
<span>@Html.TextBoxFor(model => model.Phone)</span>
<span>@Html.ValidationMessageFor(model => model.Phone)</span>
}
但我想做这样的事情:
@if (ViewBag.SkipPhone == null)
{
Html.LabelFor(model => model.Phone);
Html.TextBoxFor(model => model.Phone);
Html.ValidationMessageFor(model => model.Phone);
}
我理解HTML帮助器输出字符串,这就是为什么第二个不起作用的原因。但有没有正确的方法来做这种事情?
答案 0 :(得分:2)
这个应该有用......
@if (ViewBag.SkipPhone == null)
{
@Html.LabelFor(model => model.Phone)
@Html.TextBoxFor(model => model.Phone)
@Html.ValidationMessageFor(model => model.Phone)
}
你在每一行之前都缺少@,你在这种情况下添加分号(不需要它们),正如Andrew Barber评论的那样...
我的观点中有这样的代码,它们按预期工作......