Ich habe eine C # Datenbank-gestützte Anwendung mit einer Multi-Table Access-Datenbank als Backend. I Zusätzlich zu den Tabellen habe ich mehrere Ansichten, die die Tabellen für eine einfache Betrachtungs umformatieren. Mein Verständnis ist, dass die Ansichten für die Datenanzeige bestimmt sind, nur und nicht verwendet werden, sollten die Daten zu ändern, vor allem, wenn sie Fremdschlüssel Bindungen enthalten. Ich bin mit dieser Ordnung.
Also lassen Sie uns sagen, ich habe eine Patrons Tisch und eine vPatrons Ansicht:
DataTable Patrons;
DataTable vPatrons;
Ich habe eine Datagridview, die vPatrons und eine Reihe von Kombinationsfelder und Textfelder gebunden Patrons gebunden ist. Wenn der Benutzer Änderungen vornimmt und trifft auf eine Schaltfläche Speichern verpflichte ich die Änderungen an der Patrons Tabelle:
_bindingSource.EndEdit();
_tableAdapter.Update(Patrons);
So, jetzt meine Patrons Datatable, Patrons Datenbanktabelle und vPatrons Datenbankansicht werden alle aktualisiert. Aber ich muss noch meine vPatrons Datatable aktualisieren! Der einzige Weg, ich denken kann, dies zu tun ist, um die gesamte vPatrons Datatable neu zu füllen, die schrecklich ineffizient mir scheint:
_tableAdapter.Fill(vPatrons);
Kennt jemand einen besseren Weg zu halten, In-Memory-Tabellen und Ansichten synchronisiert?