Проблема, как я вижу, в том, что вы начинаете с PostTags
, и, вероятно, в этом случае нет записей в PostTags
;Похоже, вы хотите начать с Tags
, затем с левой стороны до Posts
.На самом деле: если у вас есть ссылочная целостность, вам даже не нужно переходить на Posts
- PostTags
должно быть достаточно.Так что ... возможно просто:
await context.Tags.AsNoTracking().Select(x => {
x.TagId, PostCount = x.PostTags.Count() }).ToListAsync();
(извините, если LINQ не работает - лично я просто написал бы его как SQL, так что я точно знаю , какой SQL выполняется)