Я получаю данные из БД следующим образом:
Позже я сгруппирую их так, чтобы они выглядели как
Month 6
Week 2
Amount 228
И так далее ..
Вот код:
var yas = await _context.product
.AsNoTracking()
.Where(x => (x.PaymentDate != null && x.PaymentDate > DateTime.UtcNow.AddMonths(-4))).ToListAsync();
var grouped = yas.GroupBy(x => CultureInfo.CurrentCulture.Calendar.GetWeekOfYear(x.PaymentDate ?? DateTime.UtcNow, CalendarWeekRule.FirstDay, DayOfWeek.Monday))
.Select(product => new productsDemoObject
{
Week = GetWeekNumberOfMonth(product.FirstOrDefault().PaymentDate.Value),
Amount = product.Sum(x => x.Amount),
Month = product.FirstOrDefault().PaymentDate.Value.Month
});
Как вы можете видеть, для 6-го месяца есть только данные для 2-й недели. И это группа и работа, как и ожидалось, ноТеперь мне интересно, как я могу добавить пустой объект с количеством 0 за отсутствующие недели.
Например, если есть только неделя 2, давайте добавим данные с количеством 0 для недель 1,3 и 4.
В примере с 8-м месяцем, потому что есть недели 2 и 3, я должен добавить недели 1 и 4 с количеством 0.
Как мне этого добиться?
Спасибо, ребята
Приветствия