C#DataTable.Select具有多个条件

时间:2017-03-18 16:14:32

标签: c# .net linq datatable datacolumn

我有一个DataTable,我想一次查询一列以检查它是否符合设定的标准,由于某种原因,下面的代码在结果不正确之后为第一列提供了正确的结果。

private bool BusinessRulesOne(DataTable dt, DataColumn dc)
    {
        bool isSatisfied = false;
        DataRow[] checkColumn = dt.Select(dc.ColumnName + " " + "in (1,2,3,)");

        if (checkColumn.Length != 0)
        {
            isSatisfied = true;
        }
        return isSatisfied;
    }

在这个方法上我传递了DataTable,我正在查询我正在关注的DataColumn。这里需要做的是我想检查此列上的值是否包含值1,2和3.如果是,则返回true。

 private bool BusinessRulesTwo(DataTable dt, DataColumn dc)
    {
        bool isSatisfied = false;
        var checkColumn = dt.Select(dc.ColumnName + " " + " = 1");

        if (checkColumn.Count() > 3)
        {
            isSatisfied = true;
        }
        return isSatisfied;
    }

在另一条规则中,如果是,则检查该列中一个(1)的数量是否超过三(3)。

欢迎提出任何建议,我不会对Linq嗤之以鼻,但如果让生活更轻松,我愿意学习和探索它。

1 个答案:

答案 0 :(得分:-1)

单个等于=用于赋值,而不是等式检查。尝试双等于== 1equals 1而不是= 1