我创建了一个c#我的班级列表与三个字段。该字段还列出设备ID,设备模式,时间。我已经根据时间对班级名单进行了排序。时间列表已成功排序,但设备模式列表未按时间列表排序。我怎么能实现它。我的代码示例如下。排序列表相对于另一个列表
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace PBAttendance.App_Code
{
public class DeviceLogData
{
List<int> deviceID = new List<int> { };
List<int> deviceMode = new List<int> { };
List<DateTime> time = new List<DateTime> { };
public List<int> DeviceID
{
get { return deviceID; }
set { deviceID = value; }
}
public List<int> DeviceMode
{
get { return deviceMode; }
set { deviceMode = value; }
}
public List<DateTime> Time
{
get { return time; }
set { time = value; }
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace PBAttendance.App_Code
{
public class DeviceLogDataList:List<DeviceLogData>
{
}
}
DeviceLogDataList dvclogDataList = new DeviceLogDataList();
DeviceLogData dvclogData = new DeviceLogData();
dvclogData.DeviceID.Add(1);
dvclogData.DeviceMode.Add(1);
dvclogData.Time.Add(DateTime.ParseExact("10:49", "HH:mm", System.Globalization.CultureInfo.InvariantCulture));
dvclogData.DeviceID.Add(1);
dvclogData.DeviceMode.Add(1);
dvclogData.Time.Add(DateTime.ParseExact("10:49", "HH:mm", System.Globalization.CultureInfo.InvariantCulture));
dvclogData.DeviceID.Add(1);
dvclogData.DeviceMode.Add(2);
dvclogData.Time.Add(DateTime.ParseExact("12:51", "HH:mm", System.Globalization.CultureInfo.InvariantCulture));
dvclogData.DeviceID.Add(1);
dvclogData.DeviceMode.Add(2);
dvclogData.Time.Add(DateTime.ParseExact("09:49", "HH:mm", System.Globalization.CultureInfo.InvariantCulture));
dvclogData.DeviceID.Add(1);
dvclogData.DeviceMode.Add(1);
dvclogData.Time.Add(DateTime.ParseExact("13:49", "HH:mm", System.Globalization.CultureInfo.InvariantCulture));
dvclogDataList.Add(dvclogData);
dvclogDataList[0].Time.Sort();
的时间列表进行排序,以09:49,10:49,10:49,12:51,13:49完美,但设备模式和设备ID不相对于时间列表排序。怎么能做到这一点。请帮帮我。对不起,我的英语不好。提前致谢。
为相同元素的所有列表方面。例如:deviceID [0]指向与deviceMode [0]相同的元素。如果是的话,我会创建一个名为device的基类,它包含了所有的DiviceModes,ID等。这个列表可以很容易地排序。它的优点是,没有人可以“错误地”处理你的数据。 –
虽然时间和模式都是同一类实例的部分,但它们完全不同。所以我不认为排序一个列表会对其他列表产生任何影响。 – Rakesh
检查了这一点:http://stackoverflow.com/questions/7099741/c-sharp-list-sort-by-two-columns,http:// stackoverflow。com/questions/289010/c-sharp-list-sort-by-x-then-y – Arie