2011-08-15 3 views
2

Razorで次の文を書くにはどうすればよいですか?trを使用してDRYを適用する方法

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

レイザーは狂ってIntellisenseバストを取得します。

ので、私は一致する開始タグとtrに関するランタイムパーサエラーを引き起こす... <text>

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

の私tr'sをラップしようとしました。

私はなぜ、このような何かをしない

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

答えて

7

を回避することにより、DRY適用したいですか? if文をclass属性の中に入れます。 falseの場合は、AlternateRowを出力します。そうでなければ、何も出力しません。

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

+1:これはいつも行います。 –

+1

私はそれを考えなかったので:D。実際には、私はあなたがそうした方法でC#をコードに落とすことができるかどうかはわかりませんでした。 +1 –

関連する問題