2

我有以下简单的代码:

@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>没有开始标签。我错过了什么?如果我用常规替换 if 语句,<tr>那么它工作正常。

4

2 回答 2

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>
 }

我认为您的代码完全可以,请查看这个SO question 以获得很好的解释。

希望能帮助到你!

于 2012-06-26T14:27:27.963 回答
0

在这两种情况下都尝试丢失 Html.Raw。我不明白你为什么需要它们

于 2012-06-26T14:26:18.433 回答