我有一个带有多个连接的存储过程,将所有数据拉入数据集中的结果集,现在我想在它上面写一个linq查询。我怎样才能做到这一点?
我期待:
IEnumerable<SomeType> result;
[我需要知道如何定义SomeType的属性。]
这是我尝试的但看起来不高效。
SqlCommand cmd = new SqlCommand("Select top 10 * from trade");
cmd.Connection = con;
if (con.State != ConnectionState.Open)
{
con.Open();
}
SqlDataReader dr = cmd.ExecuteReader();
DataTable dt = new DataTable();
dt.Load(dr);
var result = dt.AsEnumerable();
string valresukir = string.Empty;
var sortResult = result.OrderBy(x => Convert.ToInt32(x["trade_num"]) > 12);
string valuedata = string.Empty;
foreach (var i in sortResult)
{
valuedata += i["trade_num"].ToString();
}
答案 0 :(得分:0)
可以在数据表上编写linq查询,如
var data= from dataRow in dt.AsEnumerable()
where dataRow.Field<int>("trade_num") > 12
select dataRow
如果trade_num
是整数。以它为例,相应地添加条件。
希望它会对你有所帮助。