I berechnen einen Wert von 3 Werten eine Auswahl aus einer Liste zu machen:Warum führt meine Mathematik zu einem falschen 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;
Als ich das erste Element der „anwendbar“ nehmen erhalte ich ein Element, das nicht in der Liste sein soll (ich überprüfe . für Elemente mit einem Ergebnis über 14 noch bekam dieses Element ein Ergebnis von 13,975)
Ist 'b' ein Wörterbuch? – Dido
nein, b ist eine arevariable "Zeile" von excelsheet bei dezimal erhalte ich die fehlermeldung "der '+' operator kann nicht mit typ decmal und double verwendet werden. Ich tauschte alle doppelt mit dezimal –
Sie sollten Ihren Code umstellen Es ist lesbarer: Verwenden Sie Modelle mit Eigenschaften anstelle von Wörterbüchern, deren Einträge Sie nach Namen suchen und dann umwandeln müssen Sind Sie sicher, dass "anwendbar" immer einen Wert zurückgibt? Wenn nicht, erhalten Sie eine Ausnahme. – Dido