【发布时间】:2016-03-04 11:32:13
【问题描述】:
我想统计数据表中的项目状态。
我的数据表看起来像
Date , Tkt Status
1/2/13 open
1/2/13 open
2/2/13 open
2/2/13 closed
2/2/13 closed
3/3/13 in-progress
4/3/13 closed
我想要另一个数据表,格式如下
Date, Open, Closed, in-progress
1/2/13 2 0 0
2/2/13 1 2 0
3/3/13 0 0 1
4/3/13 0 1 0
我希望使用 Linq 来完成。
到目前为止我的尝试
dataQuery.Query = "是";
dataQuery.ViewFields = "<FieldRef Name='Created' /><FieldRef Name='tckPrty' /><FieldRef Name='tckStat' />";
dataQuery.ViewFieldsOnly = true;
tktData = tktList.GetItems(dataQuery).GetDataTable();
var newData = from row in tktData.AsEnumerable()
where groupDate(row.Field<string>("tckStat"))
group row by row.Field<string>("Created") into Status
orderby Status.Key
select new
{
key = Status.Key,
values = Status,
count = Status.Count()
};
foreach (var item in newData)
{
foreach (string s in tktStatus)
{
chartData.Rows.Add(item.key,item.count);
}
}
函数在这里
static bool groupDate(字符串技能) { 布尔值 = 假;
if (skill== "open")
{
value = true;
}
else
{
value = false;
}
return value;
}
【问题讨论】:
-
我想要一辆法拉利、一栋新房子和一辆六包。除非我投入一些工作,否则我不会得到任何这些 - 我建议您尝试解决方案,然后就具体问题寻求帮助。
-
我已经尝试了解决方案,但我坚持将状态设置为列并在其下获取计数。我将在这里发布我的 linq。并且不要过早地判断人,可能是不想通过一次给出大量代码来混淆他人。
-
这不是判断。你在我想要xyz的问题中说。 SO 不是代码编写服务,因此如果您什么都不提供,您将一无所获。见Asking a good question
-
如果您知道解决方案,请提供其他答案。不要让它看起来很脏。