我目前正在使用下面的代码,我想知道是否可以根据条目值进行查询。目前它返回已定义的行数。
var q = sqlData.AsEnumerable().Take(2);
这个数据来自一个数据库,并被归入表中,但目前它只将数据库数据返回到数据表中,并允许我选择前两行,我想知道我是否可以查询数据表,以便我可以根据实际表本身的索引获取我需要的行(例如,在表中我找到五行并查询此信息)。
答案 0 :(得分:2)
是的,你可以像普通的Enumerable集合一样查询它 -
假设您希望特定列名"Id"
的所有行等于5
,您可以像这样查询 -
sqlData.AsEnumerable().Where(data => data.Field<int>("Id") == 5);
这将返回列Id
值为5
的所有行。
您可以类似地查询其他数据类型,例如,您希望将Name
设置为TestName
的所有行设置为这样 -
sqlData.AsEnumerable().Where(data => data.Field<string>("Name") == "TestName");
答案 1 :(得分:0)
试试这个
var q = sqlData.AsEnumerable()
.FindAll(data => data.Field<int>("Id") == 10
&& data.Field<string>("Name").Equals("SomeName"));
//查询将返回id = 10
和name = 'somename'
。