Mam następujące wyrażenie LINQ:LINQ nie sumuje grupy z floatem? Nieruchomość
pantry = (from p in items
group p by p.IngredientId into g
select new PantryItem() { IngredientId = g.Key, Amt = g.Sum(p => p.Amt) });
Zasadniczo próbuję usunąć duplikaty z tablicy przez zsumowanie ich łącznej kwoty. Więc jeśli mam 2 pozycje IngredientId x, jeden z Amt 5 a drugi z Amt 10, chcę pojedynczy element Składnik x z Amt 15. Łatwo wystarczy?
Teraz, aby całkowicie zepsuć wszystko, Amt
jest w rzeczywistości float?
, a nie float
. Jednakże, gdy Sum
grupa z wszystkich null
kwoty, otrzymam 0.0
zamiast null
.
Oto, czego chcę:
x - null
x - null
y - 5
y - 10
z - 10
z - null
powinien przekształcić się:
x - null
y - 15
z - 10
Ale zamiast uzyskać:
x - 0.0
y - 15
z - 10
Czy istnieje sposób, aby ponownie pracować mojej kwerendy LINQ ułatwić to? Mam nadzieję, że moje pytanie jest wystarczająco jasne :)
Cóż to jest 'Amt' w' PantryItem' typu Nullable? Myślę, że nie jest to prawdopodobnie – V4Vendetta
'Amt' jest' float? ' –