Um das DataBinding besser zu verstehen habe ich ein kleines Beispiel gemacht mit einer Access DB gemacht.
Das DataGridView stellt die Daten dar, die es via BindingSource und einem typisierten DataSet erhält. Das typisierte DataSet wird via Fill() bzw. Update() über den generierten TableAdapter mit der DB abgeglichen (durch die in meinem Fall benützten OleDbConnection, OleDbDataAdapter und OleDbCommand Instanzen).
Ein Klassen Diagramm soll die Zusammenhänge verdeutlichen, Anhang "DataBinding ClassDiagram.jpg".
Ich habe das ganze im VS2005 "zusammengelickt" und es funktioniert auch, d.h. die Daten können aus der DB geladen werden, editiert und zurückgespeichert werden.
1.
Wie ist das Vorgehen, wenn ich z.B. das SQL Query für die SELECT Abfrage zur Laufzeit änderen möchte? Beispielsweise möchte ich alle Datensätze eines bestimmten Datums holen. Zur Design Zeit ist mir das klar, doch wie ist das Vorgehen zur Laufzeit?
(Ich möchte nicht die ganzen Daten holen und dann in der über BindingSource.Filter filtern.)
2.
Ist die BindingSource als Adapter oder weitere Abstraktion für die Datenquellen gedacht?
Bitte melden, falls meine Frage unklar ist oder noch mehr Infos benötigt werden.
Vielen Dank und Gruss
Simon
Comment