Gewusst wie: Implementieren der hierarchischen Aktualisierung in vorhandenen Visual Studio-Projekten
Aktualisiert: November 2007
In Visual Studio 2008 werden typisierte DataSets durch eine neue TableAdapterManager-Komponente erweitert. TableAdapterManager reduziert den Code, der zum Speichern von Daten in mehreren verknüpften Tabellen erforderlich ist, von mehreren Routinen mit vielen Codezeilen auf einen einzelnen Methodenaufruf: TableAdapterManager.UpdateAll(TypedDataset). Standardmäßig wird die hierarchische Aktualisierung für alle neuen DataSets aktiviert, die in einem Projekt hinzugefügt oder erstellt werden. Vorhandene (in früheren Versionen von Visual Studio erstellte) DataSets enthalten keine TableAdapterManager-Komponente. Deshalb ist die Eigenschaft Hierarchische Aktualisierung für DataSets, die in früheren Versionen erstellt wurden, standardmäßig auf False festgelegt. Generieren Sie TableAdapterManager-Komponenten, indem Sie die Eigenschaft Hierarchische Aktualisierung auf True festlegen und das DataSet speichern. Weitere Informationen finden Sie unter Übersicht über TableAdapterManager.
Aktivieren der hierarchischen Aktualisierung und Generieren der TableAdapterManager-Komponente
Hinweis: |
---|
Ihr Computer zeigt möglicherweise für einige der Elemente der Visual Studio-Benutzeroberfläche in der folgenden Anleitung andere Namen oder Standorte an. Diese Elemente sind von der jeweiligen Visual Studio-Version und den verwendeten Einstellungen abhängig. Weitere Informationen finden Sie unter Visual Studio-Einstellungen. |
So aktivieren Sie die hierarchische Aktualisierung in früheren Versionen typisierter DataSets
Öffnen Sie das Projekt, in dem eines oder mehrere typisierte Datasets enthalten sind, in Visual Studio 2008.
Der Visual Studio-Konvertierungs-Assistent wird geöffnet.
Führen Sie den Visual Studio-Konvertierungs-Assistenten aus.
Öffnen Sie das DataSet im DataSet-Designer, indem Sie im Projektmappen-Explorer auf die XSD-Datei doppelklicken.
Klicken Sie auf einen leeren Bereich im DataSet-Designer.
Suchen Sie die Eigenschaft Hierarchische Aktualisierung im Eigenschaftenfenster.
Legen Sie den Wert der Eigenschaft Hierarchische Aktualisierung auf True fest.
Klicken Sie im Menü Erstellen auf Projektmappe erstellen.
Konfigurieren von TableAdapterManager und Speichern von Daten
Wenn Sie die Eigenschaft Hierarchische Aktualisierung auf True festlegen und das DataSet speichern, wird die TableAdapterManager-Komponente generiert, durch die die hierarchische Aktualisierung aktiviert wird. Nachdem Sie die TableAdapterManager-Komponente generiert haben, aktualisieren Sie den vorhandenen Code, um einen neuen TableAdapterManager zu instanziieren und anstelle der einzelnen TableAdapter.Update()-Methoden die TableAdapterManager.UpdateAll()-Methode aufzurufen. Wenn sich der vorhandene TableAdapter-Code in einer Klassenbibliothek (bzw. einer beliebigen Datei, die keine Benutzeroberfläche besitzt) befindet, müssen Sie einen neuen TableAdapterManager programmgesteuert instanziieren. Wenn sich der vorhandene TableAdapter-Code in einem Formular befindet, können Sie einen neuen TableAdapterManager instanziieren, indem Sie eine TableAdapterManager-Komponente aus der Toolbox auf das Formular ziehen.
TableAdapterManagers sind stark typisiert. Dies bedeutet, dass sie mit Eigenschaften generiert werden, die auf die einzelnen von ihnen verwalteten TableAdapter verweisen. Nachdem Sie TableAdapterManager instanziiert haben, legen Sie die einzelnen TableAdapter-Eigenschaften auf Instanzen der jeweiligen TableAdapter fest, wie in den folgenden Verfahrensweisen dargestellt.
So fügen Sie einem vorhandenen Projekt, das keine Benutzeroberfläche besitzt, einen TableAdapterManager hinzu
Suchen Sie den Code, durch den die TableAdapter.Update-Methoden aufgerufen werden (z. B. CustomersTableAdapter.Update(NorthwindDataSet.Customers)).
Ersetzen Sie den Code, durch den die einzelnen TableAdapter.Update-Methoden aufgerufen werden, durch folgenden Code:
Dim adapterManager as new TableAdapterManager adapterManager.TableName1TableAdapter = new _ TableName1TableAdapter adapterManager.TableName2TableAdapter = new _ TableName2TableAdapter adapterManager.UpdateAll(Me.DataSetName)
TableAdapterManager adapterManager = new TableAdapterManager(); adapterManager.TableName1TableAdapter = new TableName1TableAdapter(); adapterManager.TableName2TableAdapter = new TableName2TableAdapter(); adapterManager.UpdateAll(this.DataSetName);
So fügen Sie einem vorhandenen Projekt, das eine Benutzeroberfläche besitzt, einen TableAdapterManager hinzu
Öffnen Sie das Formular in der Entwurfsansicht.
Ziehen Sie eine TableAdapterManager-Komponente aus der Toolbox auf das Formular.
Suchen Sie den Code, durch den die TableAdapter.Update-Methoden aufgerufen werden (z. B. CustomersTableAdapter.Update(NorthwindDataSet.Customers)).
Ersetzen Sie den Code, durch den die einzelnen TableAdapter.Update-Methoden aufgerufen werden, durch folgenden Code:
Me.TableAdapterManager.TableName1TableAdapter = _ new DatasetNameTableAdapters.TableName1TableAdapter Me.TableAdapterManager.TableName2TableAdapter = _ new DatasetNameTableAdapters.TableName2TableAdapter Me.TableAdapterManager.UpdateAll(Me.DataSetName)
TableAdapterManager.TableName1TableAdapter = new TableName1TableAdapter(); TableAdapterManager.TableName2TableAdapter = new TableName2TableAdapter(); TableAdapterManager.UpdateAll(this.DataSetName);