如题,有以下两个数据结构
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的方法

解决方案 »

  1.   

    class ResultClass
    {
        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;
    }
      

  2.   

    Dictionary  result 怎么转化成Datatable
      

  3.   

    Dictionary  result 怎么转化成Datatable
    ResultClass 可以变成 datatable
      

  4.   

    Dictionary  result 怎么转化成Datatable
    DateTable dt = new DateTable();
    dt.Columns.Add(...)
    dt.Columns.Add(...)
    dt.Columns.Add(...)
    ...
    foreach (var item in result)
        dt.Rows.Add(...)