35 Stimmen

Abfrage von Datenträgern mit Where-Bedingung

Ich habe eine Datentabelle mit zwei Spalten,

Column 1 = "EmpID"
Column 2 = "EmpName"

Ich möchte die Datentabelle abfragen, gegen die Spalte EmpID et Empname .

Ich möchte zum Beispiel die Werte erhalten, bei denen

(EmpName != 'abc' or EmpName != 'xyz') and (EmpID = 5)

43voto

mamoo Punkte 8038

Etwa so...

var res = from row in myDTable.AsEnumerable()
where row.Field<int>("EmpID") == 5 &&
(row.Field<string>("EmpName") != "abc" ||
row.Field<string>("EmpName") != "xyz")
select row;

Siehe auch LINQ-Abfrage auf eine DataTable

21voto

Gert Arnold Punkte 99327

Sie können es mit Linq tun, wie mamoo zeigte, aber die Oldies sind auch gut:

var filteredDataTable = dt.Select(@"EmpId > 2
    AND (EmpName <> 'abc' OR EmpName <> 'xyz')
    AND EmpName like '%il%'" );

16voto

Tigran Punkte 60618

Etwas wie das hier?

DataTable dt = ...
DataView dv = new DataView(dt);
dv.RowFilter = "(EmpName != 'abc' or EmpName != 'xyz') and (EmpID = 5)"

Ist es das, wonach Sie suchen?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X