1 应用场景
经常我们会从数据库中查询出DataTable,这个时候显示到页面上的时候就需要过滤掉一些当前用户不能/不希望看到的记录。
此时就要用到数据过滤了。
2 代码
下面是一个过滤掉DataTable中存储的所有人员记录的女性的完整示例:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Linq.Expressions;
using System.Data;
namespace LamdaDataFilter
{
class Program
{
static void Main(string[] args)
{
//将DataTable转换成DataRow的迭代器
DataTable input_dt = BuildTestTable();
IEnumerable<DataRow> drArray = input_dt.AsEnumerable();
//编写,编译,并执行lamda表达式
Expression<Func<DataRow, bool>> critical = p => GenderFilter(p, "男"); //返回所有男丁
var queryByCritical &