Ein Datensatz ist ein Ingedächtnis Datenspeicher, der die zahlreichen Tabellen halten kann. Datensätze halten nur Daten und wirken nicht auf irgendeine Datenquelle ein. Es ist das SqlDataAdapter, das Anschlüsse mit der Datenquelle handhabt und uns das getrennte Verhalten gibt. Das SqlDataAdapter öffnet einen Anschluß nur wenn erfordert und schließt ihn, sobald es seine Aufgabe durchgeführt hat.
Das SqlDataAdapter führt die folgenden Aufgaben durch, wenn ein Datensatz mit Daten gefüllt wird:
- Anschluß öffnen
- Daten in Datensatz zurückholen
- Anschluß schließen
Führt die folgenden Tätigkeiten wenn durch, Datenquelle aktualisierend mit Datensatz, ändert:
- Anschluß öffnen
- Änderungen von Datensatz zu Datenquelle schreiben
- Anschluß schließen
Drehbücher eines Paares veranschaulichen, warum du mit getrennten Daten würdest arbeiten wollen: das Arbeiten ohne Netzkonnektivität und das Bilden von Web site bevölkeren scalable. Verkäufe Leute betrachten, die Kunde Daten benötigen, während sie reisen. Am Anfang des Tages, benötigen sie Synchronisierung oben mit der Hauptdatenbank, die neuesten vorhandenen Informationen zu haben. Während des Tages bilden sie änderungen an vorhandenen Kunde Daten, fügen neue Kunden hinzu und geben neue Aufträge ein. Dieses ist okay, weil sie eine gegebene Region oder einen Kundenbestand haben, in dem die Leute nicht die gleichen Aufzeichnungen ändern werden. Am Ende des Tages, schließt die Verkäufe Person an das Netz an und Update ändert für über Nacht verarbeiten.
Ein anderes Drehbuch bildet eine Web site scalable. Mit einem SqlDataReader mußt du zurück zu der Datenbank für Aufzeichnungen gehen, jedesmal wenn du eine Seite zeigst. Dieses erfordert einen neuen Anschluß für jede Seite Last, die scalability verletzt, wie die Zahl Benutzern sich erhöhen. Der One-way, zum dieses zu entlasten ist, einen Datensatz zu verwenden, der aktualisierte Zeit und gespeichert im Pufferspeicher ist.
Ausnahmen des Drehbuches oben schließen Situationen ein, in denen du Daten aktualisieren mußt. Du mußt eine Entscheidung dann treffen, basiert auf der Natur von, wie die Daten hinsichtlich deiner Strategie verwendet werden. Getrennte Daten verwenden, wenn deine Informationen hauptsächlich nur gelesen werden, aber andere Alternativen betrachten (wie Verwenden des SqlCommand Gegenstandes für sofortig Update) wenn deine Anforderungen etwas dynamischer verlangen.
|