Je calcule une valeur de 3 valeurs pour effectuer une sélection dans une liste:Pourquoi mon calcul aboutit-il à un mauvais bool?
var applicable = from b in discounts.ToList() where
(b["Interest Rate"].Cast<double>() +
(-b["Discount/Premium"].Cast<double>()) +
((-b["Discount/Premium"].Cast<double>())/(b["Term"].Cast<int>()/12))) >= GlobalVar.minRealReturn
select b;
Quand je prends le premier élément de « applicable » Je reçois un élément qui ne devrait pas être dans la liste (je vérifie . pour les éléments avec un résultat plus 14 encore cet élément a obtenu un résultat de 13,975)
Est-ce que 'b' est un dictionnaire? – Dido
non, b est une variable "Row" d'excelsheet lors de l'utilisation de la décimale je reçois le message d'erreur "l'opérateur '+' ne peut pas être utilisé avec le type decmal et le double.J'échange tout double avec la décimale –
Vous devez refactoriser votre code pour faire Utilisez des modèles avec des propriétés à la place des dictionnaires dont vous avez besoin de rechercher les entrées par nom, puis lancez le jeu. Êtes-vous sûr que 'applicable' retournera toujours une valeur? Si ce n'est pas le cas, vous obtiendrez une exception – Dido