2010-12-08 3 views

Répondre

36

essayer

@((line.Quantity * line.Product.Price).ToString("c")) 

Le problème est que le rasoir ne sais pas quand la chaîne de sortie se termine depuis @ est utilisé pour afficher le code HTML. Les espaces remettent le rasoir en mode HTML. Enroulant tout entre parenthèses, le rasoir évalue l'ensemble du bloc de code.

Bien que la façon la plus appropriée serait d'introduire une nouvelle propriété dans votre modèle:

public class MyModel 
{ 
    public double Total { get { return Quantity * Product.Price; }} 
    //all other code here 
} 

et utilisez simplement:

@line.Total.ToString("c") 
+0

Je suis d'accord, certainement pas bon d'être perfoming calculs logiques dans le présentation –