目前正致力于将数据转换为DotNet.Highcharts图表的某种数组。从数据库中获取数据时遇到问题。实体框架给出了以下错误:
DbExpressionBinding需要一个带有ResultType集合的输入表达式。
select t.code, type, count(type)
from tbl_data d
join tbl_code t on d.code_name = t.code_id
where type is not null
group by code, type
order by code
using (Context db = new Context())
{
var data = db.tbl_data
.Where(d => d.type != null)
.GroupBy(d => new { d.tbl_code.code, d.type })
.Select(d => new { name = d.Key.code, type = d.Key.type , count = d.Key.type.Count() })
.OrderBy(d => new { d.name, d.type });
List<string> x_Axis = new List<string>();
List<object[]> y_Axis = new List<object[]>();
foreach (var d in data)
{
x_Axis.Add(d.name);
y_Axis.Add(new object[] { d.type, d.count });
}
var xArray = x_Axis.ToArray();
render_Chart(xArray, y_Axis);
}
来自SQL的数据样本如下。
code type (No column name)
eis06 a 49
eis06 b 3
eis07 a 33
eis08 a 38
eis09 a 32
eis09 b 68
eis14 a 17
eis14 b 34
eis15 a 24
eis15 b 17
eis16 a 27
eis16 b 16
编辑因为最初的问题很简单,这个新问题现在阻止了我。