【发布时间】:2021-12-02 01:07:34
【问题描述】:
我有一个包含步行统计数据的 SQL 数据库。
我将数据从 SQL 提取到 C# 到“事务”列表中。事务是一个类,表示某个人在某一天走了多少公里,即
public class Transaction
{
public Transaction(string firstName, string lastName, DateTime date, int kilomtersWalked)
{
FirstName = firstName;
LastName = lastName;
Date = date;
KilometersWalked = kilomtersWalked;
}
public string FirstName { get; set; }
public string LastName { get; set; }
public DateTime Date { get; set; }
public int KilometersWalked { get; set; }
}
我从 SQL 填充列表,但为了说明数据,我将在此处使用硬编码值对其进行实例化。
List<Transaction> transactions = new List<Transaction>
{
new Transaction("Michael", "Smith", new DateTime(2021, 01, 01), 5),
new Transaction("Michael", "Smith", new DateTime(2021, 01, 02), 8),
new Transaction("Michael", "Smith", new DateTime(2021, 01, 03), 7),
new Transaction("Hillary", "Johnson", new DateTime(2021, 01, 01), 12),
new Transaction("Hillary", "Johnson", new DateTime(2021, 01, 02), 3),
new Transaction("Hillary", "Johnson", new DateTime(2021, 01, 03), 6)
};
我想将数据转换为“PersonStats”列表。 PersonStats 是一个类,表示特定人步行的公里数,不仅仅是一天,而是每一天,即
public class PersonStats
{
public PersonStats(string firstName, string lastName, DateTime[] dates, int[] kilomtersWalked)
{
FirstName = firstName;
LastName = lastName;
Dates = dates;
KilometersWalked = kilomtersWalked;
}
public string FirstName { get; set; }
public string LastName { get; set; }
public DateTime[] Dates { get; set; }
public int[] KilometersWalked { get; set; }
}
虽然我付出了很多努力,但我仍然无法想出一种优雅的方式来做到这一点。任何想法将不胜感激!
【问题讨论】:
-
您打算如何持久存储它?还是我们只是在每次应用运行时计算它。