1

我目前正在编写一个接收有关运动数据的程序。变量是

练习 - 例如)卧推

日期 - 前)08/12/13

代表 - 前)10

重量 - 前)135

设置重量 - Ex) 3

休息时间 - 例如)120(以秒为单位)

当天体重 - Ex) 200

我正在从 CSV 文件导入。我已经解析了数据并拥有它,以便它给我一个这样设置的类

    Public Class WorkoutInformation
   {
   public string Exercise{get;set;}
   public List<DateTime> date; 
   public List<dynamic> sets {get;set;}
   public List<dynamic> reps {get; set;}
   public List<dynamic> weight {get;set;}
   public List<dynamic> restTime {get; set;}
   public List<dynamic> bodyWeight {get;set;}

}

所以这是我的问题。我发现当我绘制这些日期时,日期没有得到排序,我希望首先显示较早的日子。所以我一直在整理我的List<WorkoutInformation>. 但我发现这让我很容易丢失哪些日期与哪些重量、代表或其他信息相关。那么我的问题是如何创建一个类,我可以在其中访问信息(例如列表)MyList.date[i],但是当我更改MyList.date[i]所有其他信息的索引时,它会被适当地索引吗?

4

1 回答 1

1

更好的设计可能是创建一个为您保存一个数据会话的类:

public class WorkOutSession
{
    public string Exercise { get; set; }
    public DateTime Date { get; set; }
    public int Sets { get; set; }
    public int Reps { get; set; }
    public int Weight { get; set; }
    public int RestTime { get; set; }
    public int BodyWeight { get; set; }
}

public class WorkOutInformation
{
    public List<WorkOutSession> Sessions { get; set; }
}

使用该设计,您可以按日期对会话列表进行排序,并且会话的所有数据将保持关联:

var sessionsByDate = Sessions.OrderBy(s => s.Date);
于 2013-01-29T20:48:25.590 回答