如题,有以下两个数据结构
public struct WSpeedOut
{
public DateTime time;
public int Id;
public float Speed;
}public struct FGradeOut
{
public DateTime time;
public float grade;
}WSpeedOut
Time Id Speed
2013-08-04 09:01:23 1 123.01FGradeOut
Time grade
2013-08-04 09:01:23 95.5需要根据时间将相同时间两个数据合并起来 变成像下面这样结构的数据 放到datatable里面
Time Id Speed grade
2013-08-04 09:01:23 1 123.01 95.5最好不用LinQ的方法
public struct WSpeedOut
{
public DateTime time;
public int Id;
public float Speed;
}public struct FGradeOut
{
public DateTime time;
public float grade;
}WSpeedOut
Time Id Speed
2013-08-04 09:01:23 1 123.01FGradeOut
Time grade
2013-08-04 09:01:23 95.5需要根据时间将相同时间两个数据合并起来 变成像下面这样结构的数据 放到datatable里面
Time Id Speed grade
2013-08-04 09:01:23 1 123.01 95.5最好不用LinQ的方法
{
public DateTime Time { get; set; }
public int id { get; set; }
public float speed { get; set; }
public float grade { get; set; }
}Main():
Dictionary<DateTime, ResultClass> result = new Dictionary<DateTime, ResultClass>();
foreach (var w in WSpeedOutList)
{
result.Add(w.Time, new ResultClass() { Time = w.Time, id = w.id, speed = w.speed });
}
foreach (var f in FGradeOut)
{
if result.HasKey(f.Time)
result[f.Time].grade = f.grade;
}
ResultClass 可以变成 datatable
DateTable dt = new DateTable();
dt.Columns.Add(...)
dt.Columns.Add(...)
dt.Columns.Add(...)
...
foreach (var item in result)
dt.Rows.Add(...)