如何使用tr来应用DRY

时间:2011-08-15 19:43:15

标签: asp.net-mvc-3 razor

如何用Razor编写以下语句?

   @{ 
    if (isOddRow)
    {
      <tr class="PadColumns">
    }
    else
    {
      <tr class="PadColumns AlternateRow">
    } 
    //then...
    <td>content</td>
    </tr>
    }

Razor生气,Intellisense破灭。

所以我尝试将tr's包裹在<text>

if (isOddRow)
{
  <text><tr class="PadColumns"></text>
}

...导致关于tr的运行时解析器错误,但没有匹配的开始标记。

我想通过避免

申请DRY
   if (isOddRow)
    {
      <tr class="PadColumns">
          //then...
    <td>content</td>
    </tr>
    }
    else
    {
      <tr class="PadColumns AlternateRow">
    //then...
    <td>content</td>
    </tr>
    } 

1 个答案:

答案 0 :(得分:7)

为什么不做这样的事情呢?将if语句放在class属性中。如果它是假的,它会打印出AlternateRow,否则它什么都没打印出来。

<tr class="PadColumns @(isOddRow ? "" : "AlternateRow")">