Como formatar variáveis de barbear embutidas
-
27-09-2019 - |
Pergunta
A Razor faz um ótimo trabalho ao saber o que você quer fazer quando for simples. Eu só quero formatar uma variável de uma consulta e estou um pouco confuso. Tudo funciona muito bem, exceto a única linha com a instrução if string isnull nela. O compilador falha na linha com o {} dizendo que espera um semicolon ;. Aqui está o código:
@foreach(var row in db.Query(selectQueryString)){
<tr>
<td>@row.ACCT    </td>
<td>@row.QuoteStart    </td>
<td>@row.VIN     </td>
<td>@{ if (String.IsNullOrEmpty(row.AmountFinanced) == true)
{   } else
{String.Format("{0:0,0.00}",row.AmountFinanced)     }
} </td>
<td>@row.Step     </td>
</tr>
}
Solução
Você precisa embrulhar seu
s em a <text></text>
quadra. Isso força o analisador a escapar de volta ao HTML porque quando você está em um {}
Bloquear o analisador assumirá que o
deve ser o código.
@foreach(var row in db.Query(selectQueryString)){
<tr>
<td>@row.ACCT   </td>
<td>@row.QuoteStart </td>
<td>@row.VIN </td>
<td>@{ if (String.IsNullOrEmpty(row.AmountFinanced) == true)
{ <text> </text> } else
{ @String.Format("{0:0,0.00}",row.AmountFinanced) <text> </text> }
} </td>
<td>@row.Step </td>
</tr>
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow