我有一个在 Controller 中创建图表的查询;
select top 10 ParcaMakineAdi,Count(ParcaMakineAdi) from MakinelerVeParcalar group by ParcaMakineAdi
列表返回 10 行,每行包含 String,Int
我想将此查询转换为列表并将其发送到查看。
但我无法得到清单。例如(我想要);
string query = "select top 10 ParcaMakineAdi as 'Name',Count(ParcaMakineAdi) as 'Value' from MakinelerVeParcalar group by ParcaMakineAdi";
var datas = query.toList();
string name = datas[0].Name;
int value = datas[0].Value;
这种情况可能吗?
如果您使用的是 EF,您可以这样做:
var items = context.MakinelerVeParcalar.GroupBy(g => g.ParcaMakineAdi).Select(s => new { name = s.ParcaMakineAdi, count = s.Count() }).Take(10);
var datas = query.toList();
如果您不使用任何 ORM,您可以执行以下操作:
List<String> datas = new List<String>();
using(SqlConnection connection = new SqlConnection("conn_string"))
{
connection.Open();
string query = "select top 10 ParcaMakineAdi as 'Name',Count(ParcaMakineAdi) as 'Value' from MakinelerVeParcalar group by ParcaMakineAdi";
using(SqlCommand command = new SqlCommand(query, connection))
{
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
datas.Add(reader.GetString(0));
}
}
}
}
编辑:实际上我错过了那个只会返回名称的例子,但我认为你可以很容易地适应你的需要。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句