Я использую механизм просмотра Razor с MVC 3, и я пытаюсь сделать четные и нечетные строки разными классами в таблице.
Пока у меня есть этот
@{ var odd = true; }
@foreach(var userLot in Model) {
if (!odd) {
<tr id="[email protected]" class="even">
else
<tr id="[email protected]" class="odd">
}
<td>@userLot.Id</td>
<td>@userLot.Description</td>
<td>@userLot.Carat</td>
<td class="averageBid">@userLot.AverageBid</td>
<td class="rank">@userLot.Rank</td>
<td class="currentBid">@userLot.CurrentBid</td>
<td style="width: 200px; height: 30px;" class="tdWithBidInput"><input type="text" style="display: none" /></td>
</tr>
@{ odd = !odd; }
}
Это дает мне бесконечные проблемы с глупым механизмом просмотра, который не может понять, что такое разметка и что такое код. Я попробовал обернуть теги tr открытия в текстовой директиве, но затем глупый механизм просмотра стонет вокруг закрывающих тэгов. Если я затем обертываю тэг закрытия в текстовой директиве, то глупый механизм просмотра стонет, что текстовая директива не имеет открывающего тега.
Чтобы быть понятным, этот
<text></ tr></text>
дает ошибку, что текстовый тег не имеет соответствующего открытого тега. Прекрасный.
Как написать это, чтобы Razor не выдавала ошибку?
Пожалуйста, не рекомендуйте решение JavaScript, я пытаюсь обойти здесь проблемы с Razor.