请教大家reportviewer筛选处理数据问题

需求:自定义查询报表rdlc
datatable通过sql语句填入很多数据,但最终设计报表时想通过一些条件筛选,在将筛选后的结果显示在reportviewer里。
请教如何实现?
是否需要用datatable.select生成出一个新的datatable?

DataTable获取DataView,DataView有RowFilter属性可以设置过滤条件

img

using System;
using System.Data;
namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            DataTable dt = new DataTable { };
            dt.Columns.Add("age", typeof(int));

            for (var i = 0; i < 20; i++) dt.Rows.Add(i);

            DataView dv = dt.DefaultView;
            dv.RowFilter = "age>15";//选出大于15的数据

            foreach (DataRowView dvr in dv) Console.WriteLine(dvr[0]);

            Console.ReadKey();
        }
    }
}