Четные и нечетные строки таблицы с Razor

Я использую механизм просмотра Razor с MVC 3 и пытаюсь сделать четные и нечетные строки в таблице разными классами.

Пока что я у меня есть это

@{ var odd = true; }
@foreach(var userLot in Model) {
    if (!odd) {
        <tr id="lot@userLot.Id" class="even">
    else
        <tr id="lot@userLot.Id" 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 в текстовую директиву, но затем глупый движок представления стонет о закрывающих тегах tr. Если я затем заключу закрывающий тег tr в текстовую директиву, глупый движок представлений стонет, что в текстовой директиве нет открывающего тега.

Для ясности, этот

<text></ tr></text>

выдает ошибку, что текстовый тег не имеет соответствующего открывающего тега. . Прекрасно.

Как мне написать это, чтобы Razor не выдавал ошибку?

Пожалуйста, не рекомендуйте решение JavaScript, я пытаюсь здесь обойти проблемы Razor.

12
задан Jaco Pretorius 17 March 2011 в 08:37
поделиться