Verbindungen in ADOMD.NET
In ADOMD.NET verwenden Sie das -ObjektAdomdConnection, um Verbindungen mit analytischen Datenquellen zu öffnen, z. B. Microsoft SQL Server Analysis Services Datenbanken. Wenn die Verbindung nicht mehr benötigt wird, sollten Sie die Verbindung explizit schließen.
Öffnen einer Verbindung
Um eine Verbindung in ADOMD.NET zu öffnen, müssen Sie zunächst eine Verbindungszeichenfolge zu einer gültigen analytischen Datenquelle und Datenbank angeben. Dann müssen Sie die Verbindung explizit für diese Datenquelle öffnen.
Angeben einer mehrdimensionalen Datenquelle
Um eine analytische Datenquelle und datenbank anzugeben, legen Sie die -Eigenschaft ConnectionString des -Objekts AdomdConnection fest. Die für die -Eigenschaft angegebene Verbindungszeichenfolge ConnectionString ist eine OLE DB-kompatible Zeichenfolge. ADOMD.NET verwendet die angegebene Verbindungszeichenfolge, um zu bestimmen, wie eine Verbindung mit dem Server hergestellt wird.
Die ConnectionString -Eigenschaft kann entweder für ein vorhandenes Objekt oder AdomdConnection während der Erstellung einer Instanz eines Objekts festgelegt AdomdConnection werden. Der folgende Code veranschaulicht, wie die -Eigenschaft festgelegt ConnectionString wird, wenn Sie eine ADOMD-Verbindung erstellen:
Dim advwrksConnection As New AdomdConnection("Data Source=localhost;Catalog=AdventureWorksAS")
System.Diagnostics.Debug.Writeline(advwrksConnection.ConnectionString)
AdomdConnection advwrksConnection = new AdomdConnection("Data Source=localhost;Catalog=AdventureWorksAS");
System.Diagnostics.Debug.Writeline(advwrksConnection.ConnectionString);
Öffnen einer Verbindung zur Datenquelle
Nachdem Sie die Verbindungszeichenfolge angegeben haben, müssen Sie die -Methode Open verwenden, um die Verbindung zu öffnen. Wenn Sie ein -Objekt AdomdConnection öffnen, können Sie verschiedene Sicherheitsebenen für die Verbindung festlegen. Die sicherheitsstufe, die für die Verbindung verwendet wird, hängt vom Wert der ProtectionLevel-Verbindungszeichenfolgeneinstellung ab. Weitere Informationen zum Öffnen sicherer Verbindungen in ADOMD.NET finden Sie unter Einrichten sicherer Verbindungen in ADOMD.NET.
Arbeiten mit einer Verbindung
Jede geöffnete Verbindung besteht in einer Sitzung, die zustandsbehaftete Vorgänge unterstützt. Eine Sitzung kann für mehr als eine geöffnete Verbindung freigegeben werden. Durch die Freigabe einer Sitzung können mehrere Clients den gleichen Kontext nutzen. Weitere Informationen finden Sie unter Arbeiten mit Verbindungen und Sitzungen in ADOMD.NET.
Sie können eine geöffnete Verbindung verwenden, um Metadaten, Daten und Ausführungsbefehle abzurufen. Weitere Informationen finden Sie unter Abrufen von Metadaten aus einer analytischen Datenquelle, Abrufen von Daten aus einer analytischen Datenquelle und Ausführen von Befehlen für eine analytische Datenquelle.
Bei geöffneter Verbindung können Sie Daten und Metadaten abrufen und Befehle aus einer Transaktion ausführen, bei der ein Commit vor dem Lesevorgang ausgeführt werden muss, wobei während des Lesens der Daten eine Sperre aufrechterhalten wird, um Dirty Reads zu verhindern. Die Daten können auch vor dem Ende der Transaktion noch geändert werden, was zu nicht wiederholbaren Lesevorgängen oder Phantomdaten führt. Weitere Informationen finden Sie unter Ausführen von Transaktionen in ADOMD.NET.
Trennen einer Verbindung
Es wird empfohlen, ein Objekt explizit zu AdomdConnection schließen, sobald Sie die Verbindung nicht mehr benötigen. Um die Verbindung explizit zu schließen, verwenden Sie die Close- und Dispose-Methoden des - AdomdConnection Objekts.
Eine Verbindung, die nicht explizit geschlossen wird, aber aus dem Gültigkeitsbereich herausfallen darf, gibt serverressourcen möglicherweise nicht schnell genug frei, um eine hohe Parallelität Analysis Services-Clientanwendungen zu ermöglichen, um effizient neue Verbindungen zu öffnen. Je nachdem, wie Sie die Verbindung erstellt haben, AdomdConnection kann die vom -Objekt verwendete Sitzung aktiv bleiben, wenn die Verbindung nicht explizit geschlossen wird.
Weitere Informationen zu Sitzungen finden Sie unter Arbeiten mit Verbindungen und Sitzungen in ADOMD.NET.
Wichtig
Rufen Sie in der Finalize-Methode einer implementierten Klasse nicht die Close - oder Dispose-MethodenAdomdConnection eines Objekts, AdomdDataReader Objekts oder eines anderen verwalteten Objekts auf. Geben Sie in einem Finalizer nur die nicht verwalteten Ressourcen frei, die direkt der implementierten Klasse angehören. Wenn die implementierte Klasse keine nicht verwalteten Ressourcen besitzt, schließen Sie keine Finalize-Methode in die Klassendefinition ein.