je une procédure stockée qui utilise des paramètres de sortie comme ceci:precision décimal et échelle en utilisant LINQ et la procédure stockée avec des paramètres de sortie
ALTER PROCEDURE [GetAmount]
(
@orderID [int],
@totalcost decimal(18,2) OUTPUT
)
SELECT @totalcost = cost
FROM mytable
WHERE orderID = @orderID
Lorsque je fais glisser la procédure stockée sur le concepteur, le code résultant dans le fichier designer.cs finit par perdre la précision et l'échelle, comme ceci:
[Parameter(DbType="Decimal")] ref System.Nullable<decimal> totalcost
Ceci est un problème, parce que les choses comme les prix des produits et les totaux de commande sont arrondis (c.-à 19,95 devient 20).
Maintenant, je peux corriger manuellement le fichier .cs, mais je devrais me rappeler de le faire chaque fois qu'une mise à jour est faite. Est-ce que je fais quelque chose de mal? Existe-t-il un moyen de modifier ma procédure stockée qui permettrait à LINQ de détecter automatiquement la précision et l'échelle?
Intéressant - l'argent fonctionne. Des idées pourquoi? – Ethan
Je ne sais pas vraiment pourquoi la décimale ne fonctionne pas correctement. Je devrais jouer avec ça encore plus. Pardon. –