2012-04-04 14 views
0

Ich möchte zwei Zeichenfolge in datarows.For Beispiel suchen;C# Datatable Abfrage

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

Jede Zeile muss mit einem Wert von zwei Strings haben .. Dazu

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 
        } 
       } 
     } 

I Codierung something.But Ich will nicht mit der Verschmutzung in den Code beschäftigen ... Ist gibt es eine einfache Möglichkeit, Methode zu wählen?

zuerst definieren eine DataView

DataView dv = new DataView(dt) wo dt ist ein DataTable:

Antwort

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

Thnks! Es ist großartig ... –

1

Versuch, so etwas zu tun.

gelten Nach RowFilter

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

Hoffe, das hilft.