C#数据表查询

时间:2012-04-04 20:57:03

标签: c# linq

我想在datarows中搜索两个字符串。例如;

string1="ex"
string2="ex2"
row1={'ex','ex2','ex3'....}---->True
row2={'ex3','ex1','ex2'....}---->True
row3={'ex2','ex5','ex6'....}---->False 

每一行必须有两个字符串的值.. 为此,

for (counter = 0; counter < array.Count; counter++)
        {
            int index=0;
            ArrayList array3 = new ArrayList();
            array3 = Split(array[counter].ToString());
            foreach (DataRow row2 in data.Rows)
                foreach (object obje in row2.ItemArray)
                {
                    //Proceeds
                    }
                }
        }

我编码了一些东西。但我不想在代码中处理污染...... 有没有简单的方法来选择方法?

2 个答案:

答案 0 :(得分:3)

var result = data.AsEnumerable()
            .Where(r => r.ItemArray.Contains(string1) || r.ItemArray.Contains(string2))

答案 1 :(得分:1)

尝试做这样的事情:

首先定义DataView

DataView dv = new DataView(dt)其中dtDataTable

申请RowFilter

dv.RowFilter = "CONTAINS(ColName, 'ex1') AND CONTAINS(ColName, 'ex2')"

希望这有帮助。