如何直接查询DataTable和DataSet?

时间:2014-06-26 13:51:42

标签: c# sql .net visual-studio-2010

是否可以直接在数据集或数据表上执行SQL查询。需要执行的查询非常复杂,使用Linq可能很难实现。

有没有类似的方法直接从数据集或数据表中查询?

是否有可用于将复杂查询转换为linq的工具?

2 个答案:

答案 0 :(得分:0)

有一个DataTable.Select()方法,它返回符合特定条件的行。

然而,语法有点受限。例如:

DataTable.Select("Date > #1/1/2014# AND Name = \"John\"");

应选择Date列具有日期值为1/1/2014或更高版本的任何行,并且Name列为" John"。同样方便的是使用String.Format()。

DataTable.Select(String.Format("Date > {0} AND Name = {1}", date, name));

与在实际查询中修复它相比,这是非常有限的。

答案 1 :(得分:0)

尝试使用像LinqPad这样的工具或类似的东西 Download LinqPad
另一种方法是在数据库中创建复杂查询作为VIEW,然后从VIEW写一个简单的选择! 另一种方法是,使用MethodChain
What is the correct way to chain methods in .Net