2010-11-22 8 views
5

カミソリは、単純なときに何をしたいかを知っている素晴らしい仕事です。私はちょうどクエリから変数をフォーマットしたいと少し混乱しています。すべてがうまくいきますが、if文字列isnullステートメントを含む1行を除きます。コンパイラは、{& nbsp}がセミコロンを要求しているという行で失敗します。インラインカミソリの書式を設定する方法

@foreach(var row in db.Query(selectQueryString)){ 
<tr> 
     <td>@row.ACCT &nbsp &nbsp</td> 
     <td>@row.QuoteStart &nbsp &nbsp</td> 
     <td>@row.VIN &nbsp &nbsp </td> 
     <td>@{ if (String.IsNullOrEmpty(row.AmountFinanced) == true) 
       { &nbsp } else 
       {String.Format("{0:0,0.00}",row.AmountFinanced) &nbsp &nbsp } 
      } </td> 
     <td>@row.Step &nbsp &nbsp </td> 


</tr> 
} 

答えて

10

あなたは<text></text>ブロックであなたの&nbsp; Sをラップする必要があります。ここでは、コードです。 {}ブロックにいるとき、パーサーは&nbsp;がコードであると仮定しているので、パーサーはhtmlにエスケープされます。

@foreach(var row in db.Query(selectQueryString)){ 
<tr> 
     <td>@row.ACCT &nbsp &nbsp;</td> 
     <td>@row.QuoteStart &nbsp; &nbsp;</td> 
     <td>@row.VIN &nbsp; &nbsp; </td> 
     <td>@{ if (String.IsNullOrEmpty(row.AmountFinanced) == true) 
       { <text>&nbsp;</text> } else 
       { @String.Format("{0:0,0.00}",row.AmountFinanced) <text>&nbsp; &nbsp;</text> } 
      } </td> 
     <td>@row.Step &nbsp; &nbsp; </td> 
</tr> 
} 
+0

コードでの説明と修正をありがとうございます。私はString.Formatの前に@が必要だと思います。私が使用した最後のコードは次のとおりです(千のインジケータを追加できるように文字列を数値に変換しなければなりませんでした):{@ String.Format( "{0:0,0.00}"、Convert.ToDouble(row.AmountFinanced ))&nbsp}} 回答を編集した場合、私はそれを受け入れたとマークします。再度、感謝します。 – Knox

+0

あなたは@を読んでいるので、あなたはそれを画面に出力しようとしています。私は ' 'についてもっと心配していました。ありがとう:) – Buildstarted

関連する問題