Как я могу построить повторяющиеся данные на оси месяц-дата-время в C#
Я работаю над основным приложением для составления бюджета для Windows в C#. У меня есть таблица SQL, в которой хранится список доходов и таблица, в которой хранятся расходы. В обоих случаях пользователь выбирает, является ли это ежедневная / еженедельная / ежемесячная сумма и дата для этого дохода / расхода. Мне удалось создать диаграмму серии строк, которая отображает сумму всех сумм за месяц с Месяцем по оси X с использованием следующего кода:
var query = conn.Table<incomedata>();
LineSeries IncomeLineSeries = new LineSeries();
List<DateAmountList> List1 = new List<DateAmountList>();
for (int i = 1; i <= 12; i++)
{
List1.Add(new DateAmountList() { Date = DateTimeFormatInfo.CurrentInfo.GetMonthName(i), Amount = query.AsEnumerable()
.Where(o => CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(o.Date.Month) == DateTimeFormatInfo.CurrentInfo.GetMonthName(i)).Sum(o => (int)o.Amount) });
}
IncomeLineSeries.ItemsSource = List1;
IncomeLine.Series.Add(IncomeLineSeries);
Я знаю, что мог бы заставить пользователя выбрать конечную дату и из этого определить, сколько месяцев повторить, но я застрял на том, как добавить эту сумму к итоговой сумме за каждый месяц и отобразить ее...
Так, например, вы зарабатываете 100 каждый месяц в течение 12 месяцев, начиная с января, на данный момент сумма добавляется только к январю, поскольку это сохраненная дата и время, как я могу добавить 100 к каждому месяцу DateAmountList (Amount) до тех пор, пока это повторяется?
Как только у меня появится идея, как делать это ежемесячно, я буду применять аналогичную логику к ежедневной и еженедельной.
1 ответ
В конце концов я решил, что для этого я мог бы заполнить другую таблицу с суммой, хранящейся против каждого месяца и добавить в таблицу за каждый месяц, а затем просто добавить к серии диаграмм