118 messaggi dal 09 luglio 2007
Salve, ho un campo prezzo dove va detratto lo sconto per farmi tornare in una variabile il prezzo scontato.
var prodottoscontato = (from ps in GetAllProduct()
                                    join pinp in _prodottiinpromozionebusiness.GetAllProdottiInPromozione()
                                    on ps.ProductID equals pinp.idprodotto
                                    join ppv in _promozioneprodottivaluebusiness.GetAllPromotionProductValue()
                                    on pinp.idpromozione equals ppv.idpromotion
                                    join pp in _promotionproductbusiness.GetAllPromotionProduct()
                                    on ppv.idpromotion equals pp.idpromozione
                                    join prezzoR in _prezzorivenditoredao.GetAllPrezziRivenditori()
                                    on ps.ProductID equals prezzoR.idprodotto
                                    where pp.tipo_promozione == "Sconto"
                                    && ps.ProductID == idprodotto
                                    let prezzoscontato = Math.Round(prezzoR.prezzor - ((prezzoR.prezzor * 100) / int.Parse(ppv.value)),2)
                                    select new { idprod = ps.ProductID, sconto = ppv.value, prezzo = prezzoR.prezzor, prezzos = prezzoscontato }).AsEnumerable().FirstOrDefault();


            pns.idprodotto = prodottoscontato.idprod;
            pns.prezzo = prodottoscontato.prezzo;
            pns.prezzoscontato = String.Format(prodottoscontato.prezzos.ToString(),"#.##"); //(prodottoscontato.prezzos - ((prodottoscontato.prezzos * 100) / int.Parse(prodottoscontato.sconto)));
            pns.sconto = int.Parse(prodottoscontato.sconto);

            return pns;


Ma non rieco a farmi tornare il prezzo in euro con la formattazione mi potete aiutare
Grazie
Non ho capito molto bene, ma se la questione è quella di rappresentare sotto forma di stringa un valore numerico, puoi fare come segue:

Decimal numericValue = 123.45M; 
String.Format("{0:c}", numericValue); // "c" sta per Currency, quindi "valuta"

Per quanto riguarda la cultura, puoi avvalerti del seguente overload:

public static string Format(IFormatProvider provider, 
                      String format, 
                      params Object[] args 
)

Nicola Baldi
"Make things as simple as possible, but not simpler."
>>> My blog <<<
prova così:
pns.prezzoscontato = String.Format(string.Format("{0:C}",                   prodottoscontato.prezzos); 


qual'è il tipo di prodottoscontato.prezzos ?

Davide Guida
Technical Architect @ Razorfish Healthware
http://davideguida.altervista.org

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.