2010-09-01 6 views
0

Dans une requête LINQ To SQL, comment puis-je appliquer une fonction Round sur une colonne dans ma sortie?Comment arrondir() dans une requête Linq to SQL?

Ma requête est

From s In oRecelDB.Items Where s.BIN = 'ABC' Select s.ITEMNMBR, s.QUANTITY 

et les résultats sont

ITEM I 35.0000 
ITEM 2 45.0000 
ITEM 3 23.0000 

Je veux retirer le ,00000 de la valeur de deuxième colonne. Comment faire cela dans ma requête?

+0

Voulez-vous arrondir le nombre ou juste laisser tomber la décimale? – Martin

+0

Just drop decimal – Shyju

Répondre

4

convertir simplement la valeur à un nombre entier:

From s in oRecelDB.Items Where s.BIN = 'ABC' _ 
    Select s.ITEMNMBR, Quantity = System.Convert.ToInt32(s.QUANTITY) 
+0

Est-ce le formulaire C#? Puis-je avoir l'équivalent de vb.net? – Shyju

+0

@Shyju - Cela devrait être le formulaire VB.NET. –

+0

J'ai essayé cela et j'obtiens une erreur "Le nom de la variable Range ne peut être déduit qu'à partir d'un nom unique ou qualifié sans arguments". Une idée pourquoi? – Shyju

1

Si vous voulez vraiment simplement laisser tomber les valeurs décimales utilisent Math.Floor:

From s In oRecelDB.Items Where s.BIN = 'ABC' _ 
    Select s.ITEMNMBR, Math.Floor(s.QUANTITY) 

Il vous renvoie un type décimal. Cela peut/ne pas être ce que vous voulez.