我对 Linq 很陌生,现在我遇到了以下问题。我有以下功能:
public Dictionary<DateTime, List<PloegenRooster_Uitzonderingen>> GetPloegenRoosterUitzonderingen(char ploeg, DateTime fromDate, DateTime toDate)
{
return (
from item in this.GetTable<PloegenRooster_Uitzonderingen>()
join itemType in PloegenRooster_Uitzondering_Types on item.UitzonderingTypeId equals itemType.Id
group item by item.Datum
).ToDictionary(d => d.Key, d => d.ToList());
}
这完美地工作。但是,现在我正试图将其变成 LEFT JOIN。我最终得到以下结果:
public Dictionary<DateTime, List<PloegenRooster_Uitzonderingen>> GetPloegenRoosterUitzonderingen(char ploeg, DateTime fromDate, DateTime toDate)
{
return (
from item in this.GetTable<PloegenRooster_Uitzonderingen>()
join itemType in PloegenRooster_Uitzondering_Types on item.UitzonderingTypeId equals itemType.Id into itemTypeJ
from itemTypeS in itemTypeJ.DefaultIfEmpty()
group item by item.Datum
).ToDictionary(d => d.Key, d => d.ToList());
}
但是现在我遇到了以下异常:
The null value cannot be assigned to a member with type System.Int32 which is a non-nullable value type.