I need to check if all definitions contains some specific data. It works fine except the case when GroupBy returns empty collection.
var exist = dbContext.De
Edit: first answer wouldn't have worked.
If you rearrange your query somewhat, you can use DefaultIfEmpty
without needing to change your condition:
var exist = dbContext.Definitions
.Where(x => propertyTypeIds.Contains(x.PropertyTypeId)
&& x.CountryId == countryId)
.GroupBy(x => x.PropertyTypeId);
// apply the condition to all entries,
// resulting in sequence of bools (or empty),
// to permit the next step
.Select(...some condition...)
//if seq is empty, add `false`
.DefaultIfEmpty(false)
//All with identity function to apply the query and calculate result
.All(b => b)
);