2010-11-20 13 views
0

J'ai un problème avec la récupération de la valeur null.récupération de la valeur null à partir de la table de base de données dans asp.net mvc 2.0 en utilisant C#

J'ai une option dans mon application MVC. Si je sélectionne le champ Taxable comme Oui alors la valeur entrée est stockée dans la table. Si je sélectionne Taxable comme No alors la valeur Null est stockée dans la table.

Maintenant, je veux récupérer cette valeur nulle de la table pour l'utiliser à des fins de calcul. Ceci est mon codage,

return db.Groups.SingleOrDefault(g => g.GroupID == gid).TaxRate.HasValue ?  
db.Groups.SingleOrDefault(g => g.GroupID == gid).TaxRate.Value : (double?)0.0; 

Mais dans la première condition que ce sera montre l'erreur comme

System.InvalidOperationException 
Nullable Object must have a value. 

Je ne sais pas pourquoi je suis arrivé cette erreur.

S'il vous plaît dites-moi la solution pour cela.

Merci d'avance.

Répondre

0

Avez-vous essayé de définir simplement db.Groups.SingleOrDefault (g => g.GroupID == gid) dans une variable, puis de vérifier si la propriété TaxRate existe ou est nulle?

+0

avant de faire comme ceci, mais en déclarant la variable comme, double? impôt; ici seulement j'ai eu l'erreur. C'est pourquoi maintenant je renvoie directement la valeur de taxrate dans la ligne simple. Mais en vérifiant la condition seulement elle montre l'erreur. s'il vous plaît dites-moi pourquoi cela arrive. – Mallikarjuna

+0

Affectez-le à une variable objet et examinez-le dans votre débogueur Visual Studio. Ou mieux encore, recherchez dans la bibliothèque MSDN quel est le type de retour de SingleOrDefault. –