Ben sorgu varLinq toplamı ve boş
{21}
{}
{}
{}
sorun gibi görünüyor Sum()
döner null
kayıt yoksa. Bu şekilde nasıl geçeceğimi bilmiyorum, böylece c.Plays + null
null
eşit değil ama sadece c.Plays
.
Ben sorgu varLinq toplamı ve boş
{21}
{}
{}
{}
sorun gibi görünüyor Sum()
döner null
kayıt yoksa. Bu şekilde nasıl geçeceğimi bilmiyorum, böylece c.Plays + null
null
eşit değil ama sadece c.Plays
.
Sen int?
döndürerek değil Bunu düzeltmek değil, doğrudan doğruya bir int
için dönüştürebilirsiniz: Bu işleri
.Sum(v => v.Plays ?? 0)
int response =
(from p in data.tbHoraires
where p.eid == eid && p.annee == annee && p.obligatoire == true
select (int?)p.nbminute ?? 0).Sum();
Teşekkür! Neden boş bir kümenin toplamı linq'de sql olarak belirtiliyor? Boş bir setin toplamı 0 olmalıdır. –
@TomGullen * "' Sum() 'her zaman düz LINQ içinde boş bir sıra için 0 döndürür, SQL eksiklik için bir LINQ olduğu gibi görünür ve o zaman bile sadece toplam değerleri null olamazsa mümkün olmalıdır (aksi halde, Sum'un dönüş türü düz * * ondalık *, değil * ondalık? *) olacaktır. * * http://connect.microsoft.com/VisualStudio/feedback/details/360365/linq-sum- method-return-value – Rob
@robjb sütunların hiçbiri null olamaz, bu linq'de sql için bir hata olur mu? –