Ich muss durch a iterieren DataTable
. Ich habe dort eine Spalte mit dem Namen ImagePath
.
Wenn ich benutze, DataReader
mache ich es so:
SqlDataReader dr = null;
dr = cmd.ExecuteReader();
while (dr.Read())
{
TextBox1.Text = dr["ImagePath"].ToString();
}
Wie kann ich mit dem gleichen Ziel erreichen DataTable
?
Antworten:
... setzt voraus, dass die Verbindung offen ist und der Befehl ordnungsgemäß eingerichtet ist. Ich habe auch die Syntax nicht überprüft, aber sie sollte Ihnen die Idee geben.
quelle
linq
Lösung und fragt sich, wo sich(cmd)
die obige Lösung befindet?cmd
wäre der auszuführende SQL-Befehl. Wenn Sie LINQ verwenden, schreiben Sie Ihre LINQ-Abfrage und erhalten Ihre Ergebnisse auf diese Weise.Ich schreibe das aus dem Gedächtnis.
Ich hoffe, dies gibt Ihnen genug Hinweise, um das Objektmodell zu verstehen.
DataTable
->DataRowCollection
->DataRow
(welche man verwenden und nach Spalteninhalten für diese Zeile suchen kann, entweder mit columnName oder ordinal).-> = enthält.
quelle
Sie können auch linq-Erweiterungen für DataSets verwenden:
quelle
AsEnumerable()
fürDataTable
SieSystem.Data.DataSetExtensions
als Abhängigkeit hinzugefügt werden muss.Die obigen Beispiele sind sehr hilfreich. Aber wenn wir überprüfen wollen, ob eine bestimmte Zeile einen bestimmten Wert hat oder nicht. Wenn ja, dann löschen und unterbrechen und falls kein Wert gefunden wird, wird ein direkter Wurffehler gefunden. Der folgende Code funktioniert:
quelle