<%# DataBinder.Eval(Container.DataItem, "FieldName","{0:0.00}") %>
5 Réponses :
SELECT CAST(ROUND(123.4567, 2) AS MONEY) Will do what you are after
Cela fonctionne, mais lorsque j'attribue la valeur à un champ de répéteur sur ma page .aspx, il affiche à nouveau deux zéros traînants. J'utilise LINQ vers SQL.
Vous pouvez utiliser un tostring () dans votre répéteur spécifiant le format sur la façon dont vous le souhaitez.
+1 Merci pour votre réponse. Votre réponse est également juste en train de regarder ma question. Mais @abatishchev a essayé de résoudre le problème plus important au lieu de simplement répondre à ma question. C'est pourquoi, j'ai accepté sa réponse.
le cas échéant, format sur la couche de vue, pas sur la couche de données, c'est-à-dire toutes les données et tronquez-la plus tard (comme dans le client C #) p>
+1. Lier comme ceci dans le répéteur travaillé <% # dataxier.eval (conteneur.datitem, "nom de terrain", "{0: 0.00}")%> code>. Merci de me diriger à résoudre le problème réel.
@ IMPAIL: Heureux que cela ait aidé! :) P.s. J'ai eu les mêmes problèmes -
Mais cela ne fonctionnerait pas dans l'édition de composants comme la grille de DevExpress. Les formulaires d'édition sont brisés par cela.
SELECT ROUND(123.4567, 2,1) See http://msdn.microsoft.com/en-us/library/ms175003(SQL.90).aspx
SELECT FORMAT(123.4567,'N2') It will Help You Out
@ ismails - pour moi, la plus grande image est de laisser le format du serveur de données autant que possible, surtout quand c'est quelque chose d'aussi simple qu'un casting en ligne. Cela donne moins d'encombrement dans votre autre code. Par exemple, casting prix em> strong>, champ d'argent: p>
ymmv - c'est mon expérience personnelle. P> Sélectionnez Cast (prix sous forme numérique (17,2)) Prix à partir de PriceTable code> p>