您可以尝试这样的事情,我没有检查语法等的正确性。
Dictionary<string,int[]> data = new Dictionary<string,int[]>();
foreach (var record in database)
{
if (!data.ContainsKey(record["location"]))
{
int[] days = new int[32];
days[record["day"]] = record["hour"];
data.Add(record["location"], days);
}
else
{
int[] days = data[record["location"]];
days[record["day"]] = record["hour"];
//data[record["location"]] = days;
}
}
该变量data
应该具有您想要的格式的数据。然后循环遍历并填充 html 表。
编辑以回应OP的评论
如果每天有一组以上的小时数并且这组的数量不固定,那么您可以使用类似这样的东西。
Dictionary<string,ArrayList> day = new Dictionary<string,ArrayList>();
Dictionary<string,day> location = new Dictionary<string,day>();
在这里,day
字典将保存类似Day 1, Day 2, Day 3, etc...
的键,值ArrayList
将保存当天的小时数组。
location
字典将保存类似的键,Area 1, Area 2, etc...
值将是day
字典。
也许这会给你一些关于如何解决这个问题的提示。