Freigeben über


Übersicht über die Architektur des BizTalk-Adapters für SQL Server

Der Microsoft BizTalk-Adapter für SQL Server ist eine benutzerdefinierte Windows Communication Foundation (WCF)-Bindung. Diese Bindung enthält ein einzelnes benutzerdefiniertes Transportbindungselement, das die Kommunikation mit einer SQL Server-Datenbank ermöglicht. Der SQL-Adapter wird von der Laufzeit des Microsoft Windows Communication Foundation (WCF) Branchenadapter-SDK (Lob) umschlossen und für Anwendungen über die WCF-Kanalarchitektur verfügbar gemacht. Der SQL-Adapter kommuniziert mit der SQL Server-Datenbank über ADO.NET.

Die folgende Abbildung zeigt die End-to-End-Architektur für Lösungen, die mithilfe des SQL-Adapters entwickelt werden.

Abbildung, die die End-to-End-Architektur für Lösungen zeigt, die mithilfe des SQL-Adapters entwickelt werden.

Verwenden des Adapters

Der SQL-Adapter macht die SQL Server Datenbank als WCF-Dienst für Clientanwendungen verfügbar. Um Vorgänge auszuführen und auf Daten in der SQL Server Datenbank zuzugreifen, tauschen Clientanwendungen SOAP-Nachrichten mit dem SQL-Adapter über WCF-Kanäle aus. Die obige Abbildung zeigt vier Möglichkeiten, wie der SQL-Adapter genutzt werden kann.

  • Über eine WCF-Kanalmodellanwendung. Eine WCF-Kanalmodellanwendung führt Vorgänge für die SQL Server-Datenbank aus, indem sie das WCF-Kanalmodell verwendet, um SOAP-Nachrichten direkt mit dem SQL-Adapter auszutauschen. Weitere Informationen finden Sie unter Entwickeln von SQL-Anwendungen mithilfe des WCF-Kanalmodells.

  • Über eine WCF-Dienstmodellanwendung. Eine WCF-Dienstmodellanwendung ruft Methoden auf einem WCF-Client auf, um Vorgänge für die SQL Server-Datenbank auszuführen. Ein WCF-Client modelliert die Vorgänge, die vom SQL-Adapter als .NET-Methoden verfügbar gemacht werden. Sie können das Microsoft Windows Communication Foundation (WCF) Branchenadapter-SDK (LOB) oder das WCF ServiceModel Metadata Utility Tool (svcutil.exe) verwenden, um eine WCF-Clientklasse aus Metadaten zu erstellen, die vom SQL-Adapter verfügbar gemacht werden. Weitere Informationen finden Sie unter Entwickeln von SQL-Anwendungen mithilfe des WCF-Dienstmodells.

  • Über einen BizTalk-Empfangsspeicherort oder -Sendeport, der für die Verwendung des Microsoft BizTalk-WCF-Custom-Adapters konfiguriert ist. Der WCF-Custom-Adapter ermöglicht die Verwendung von WCF-Erweiterbarkeitsfeatures. Mithilfe des WCF-Custom-Adapters können Sie die SQL DB-Bindung und das Verhalten für den Empfangsspeicherort oder Sendeport auswählen und konfigurieren. Weitere Informationen zur Verwendung des SQL-Adapters in BizTalk Server Lösungen finden Sie unter Entwickeln BizTalk Server Anwendungen.

  • Über einen iis-gehosteten Webdienst. In diesem Szenario wird ein WCF-Dienstproxy, der mithilfe des Adapters generiert wurde, in IIS mithilfe der WCF-Http-Standardbindung gehostet. Dadurch wird der Dienstvertrag als Webdienst für externe Benutzer verfügbar gemacht. IIS hostet den Adapter automatisch zur Laufzeit, was wiederum mit dem SQL Server-Datenbank kommuniziert.

SQL-Adapter und WCF

WCF stellt ein Programmiermodell vor, das auf dem Austausch von SOAP-Nachrichten über Kanäle zwischen Clients und Diensten basiert. Diese Nachrichten werden zwischen Endpunkten gesendet, die von einem kommunizierenden Client und dienst verfügbar gemacht werden. Ein Endpunkt besteht aus:

  • Eine Endpunktadresse, die den Speicherort angibt, an dem Nachrichten empfangen werden.

  • Eine Bindung, die die Kommunikationsprotokolle angibt, die zum Austauschen von Nachrichten verwendet werden.

  • Ein Vertrag, der die Vom Endpunkt verfügbar gemachten Vorgänge und Datentypen angibt.

    Eine Bindung besteht aus einem oder mehreren Bindungselementen, die übereinander stapeln, um zu definieren, wie Nachrichten mit dem Endpunkt ausgetauscht werden. Mindestens muss eine Bindung den Transport und die Codierung angeben, die zum Austauschen von Nachrichten mit dem Endpunkt verwendet werden. Der Nachrichtenaustausch zwischen Endpunkten erfolgt über einen Kanalstapel, der aus einem oder mehreren Kanälen besteht. Jeder Kanal ist eine konkrete Implementierung eines der Bindungselemente in der für den Endpunkt konfigurierten Bindung.

Die WCF-Dokumentation enthält weitere Details zu WCF und zum WCF-Programmiermodell.

Der Microsoft BizTalk-Adapter für SQL Server macht eine benutzerdefinierte WCF-Bindung verfügbar, die SQL DB-Bindung (Microsoft.Adapters.SQLDB.SQLDBBinding). Standardmäßig enthält diese Bindung ein einzelnes benutzerdefiniertes Transportbindungselement, das SQL DB-Adapterbindungselement (Microsoft.Adapters.SQLDB.SQLDBAdapter), das Vorgänge für eine SQL Server Datenbank ermöglicht.

Microsoft.Adapters.SQLDB.SQLDBBinding (SQL DB-Bindung ) und Microsoft.Adapters.SQLDB.SQLDBAdapter (das SQL DB-Adapterbindungselement) sind öffentliche Klassen und werden auch für das Konfigurationssystem verfügbar gemacht. Da das SQL DB-Adapterbindungselement öffentlich verfügbar gemacht wird, können Sie Ihre eigenen benutzerdefinierten WCF-Bindungen erstellen, die die Funktionalität des SQL-Adapters erweitern können. Sie könnten beispielsweise eine benutzerdefinierte Bindung implementieren, um das einmalige Anmelden (Single Sign-On, SSO) von Enterprise in einem WCF-Kanal oder einer Dienstmodelllösung zu unterstützen. Gründe hierfür wären das Aggregieren von Datenbankvorgängen in einem einzelnen Mehrfunktionsvorgang oder die Schematransformation zwischen Vorgängen, die von einer benutzerdefinierten Anwendung implementiert werden, und Vorgängen in der SQL Server Datenbank.

Der SQL-Adapter basiert auf dem Lob-Adapter-SDK (Microsoft Windows Communication Foundation) (WCF) und wird auf der Laufzeit des WCF LOB Adapter SDK ausgeführt. Das WCF LOB Adapter SDK stellt ein Softwareframework und eine Toolinfrastruktur bereit, die der SQL-Adapter verwendet, um Benutzern und Adapterclients umfangreiche Features bereitzustellen.

SQL-Adapter und das WCF LOB Adapter SDK

Der Microsoft BizTalk-Adapter für SQL Server implementiert eine Reihe von Kernkomponenten, die funktionen des Microsoft Windows Communication Foundation (WCF)-Branchenadapter-SDK (Microsoft Windows Communication Foundation, WCF) nutzen und die Konnektivität mit der SQL Server-Datenbank über ADO.NET bereitstellen.

Das WCF LOB Adapter SDK dient als Softwareebene, über die der SQL-Adapter mit windows Communication Foundation (WCF) kommuniziert. ADO.NET dient als Ebene, über die der SQL-Adapter eine Schnittstelle mit der SQL Server-Datenbank herstellt. Die folgende Abbildung zeigt die Beziehungen zwischen den internen Komponenten des SQL-Adapters und zwischen diesen Komponenten und ADO.NET.

Abbildung, die die Beziehungen zwischen den internen Komponenten des SQL-Adapters und zwischen diesen Komponenten und ADO.NET zeigt.

ADO.NET

Der SQL-Adapter stellt über ADO.NET eine Verbindung mit der SQL Server-Datenbank her. ADO.NET ermöglicht einen konsistenten Zugriff auf Datenquellen wie SQL Server und erleichtert das Abrufen, Verarbeiten und Ändern der Daten in den Datenquellen. Weitere Informationen finden Sie unter ADO.NET.

Der SQL-Client bietet Konnektivität mit der SQL Server-Datenbank. Sie stellen eine Verbindung mit einer SQL Server-Datenbank her, indem Sie einen Verbindungs-URI für den SQL-Adapter bereitstellen. Dieser Verbindungs-URI enthält den Namen des Computers, auf dem die SQL Server installiert ist, und den Namen der Datenbank. Weitere Informationen zum Verbindungs-URI finden Sie unter Erstellen einer Verbindung mit SQL Server.

Weitere Informationen

Informationen über BizTalk-Adapter für SQL Server