我有以下简单的代码:
@for (int j = 0; j < file.Items.Count; j++) {
var item = file.Items[j];
if (item.Errors.Count > 0)
{
Html.Raw("<tr class='errors'>");
}
else {
Html.Raw("<tr>");
}
<td>blah</td>
</tr>
}
但是,我不断收到解析错误,说明结尾</tr>
没有开始标记。我错过了什么?如果我用常规<tr>
替换if语句,那么它可以正常工作。
答案 0 :(得分:1)
我认为这只是一个智能感知问题,试试这个黑客:
@for (int j = 0; j < file.Items.Count; j++) {
var item = file.Items[j];
if (item.Errors.Count > 0)
{
@:<tr class="errors">
}
else {
@:"<tr>");
}
@:<td>blah</td>
@:</tr>
}
我认为您的代码完全没问题,请查看this SO问题以获得对此的详尽解释。
希望它有所帮助!
答案 1 :(得分:0)
尝试在两种情况下都丢失Html.Raw。我不明白你为什么需要它们