Ich habe ein Problem mit dieser Abfrage, das einen Fehler verursacht.Die Umwandlung zum Werttyp 'Dezimal' ist fehlgeschlagen, da der materialisierte Wert null ist
var TotalToDatePayable = ( from ori in db.GetAll<WMPORI>()
where ori.CTMSysID == ctmSysId
select ori.ExB4Taxes).Sum();
Ich habe versucht, unter Code von another similar question aber das hat mein Problem nicht lösen:
var TotalToDatePayable = (Decimal?)( from ori in db.GetAll<WMPORI>()
where ori.CTMSysID == ctmSysId
select ori.ExB4Taxes).Sum()) ?? 0;
Dies funktioniert: var TotalToDatePayable = (von ori in db.GetAll() wo ori.CTMSysID == ctmSysId select ori.ExB4Taxes) .DefaultIfEmpty (0) .sum(); –
Developer
@DmitryBychenko Ich dachte, diese Art der Einrückung war exklusiv für Objective C. Jetzt bin ich traurig. – Rawling
@Rawling 9: Diese Art von Einrückung ist typisch in SQL (die Linq in der Frage emuliert). Das war der Grund für mich, Räume hinzuzufügen. –