Hinzufügen von SOAP-Headern zu Clientanwendungen
SQL Server 2005 bietet Unterstützung für SOAP-Erweiterungsheader, wenn Sie systemeigene XML-Webdienste verwenden. Diese Header können zum Erweitern und Optimieren Ihrer SOAP-basierten Anwendungen verwendet werden, indem Sie SQL-Optionen und andere unterstützte SOAP-Erweiterungsheader verwenden, z. B. SOAP-Sitzungen und Web Services Security (WS-Security). Weitere Informationen finden Sie unter SOAP-Erweiterungsheader.
Dieses Thema enthält eine Beispielklassenbibliothek, die die einzelnen optionalen SOAP-Erweiterungsheader implementiert, die von SQL Server 2005 unterstützt werden. Diese Bibliothek kann vorhandenen Visual Studio 2005-SOAP-Clientprojekten hinzugefügt werden. Dies schließt die Beispielanwendungen ein, die in Beispielanwendungen für das Senden systemeigener XML-Webdiensteanforderungen bereitgestellt werden.
- Es wird empfohlen, dass Sie sich mit den konzeptionellen und prozedurbezogenen Informationen vertraut machen, die unter Festlegen, dass der Server Anforderungen systemeigener XML-Webdienste überwacht und Schreiben von Clientanwendungen bereitgestellt werden.
Außerdem sollten Sie die folgenden Themen lesen, wenn Sie mit Headern arbeiten, die entweder Sicherheits- oder Sitzungsunterstützung durch Verwenden der geeigneten SOAP-Erweiterungsheader für die entsprechenden Features implementieren.
Hinweis: |
---|
Das folgende Verfahren geht davon aus, dass Sie eine vorhandene SOAP-Clientanwendung mit Visual Studio 2005 erstellt und einen Webverweis auf einen HTTP SOAP-Endpunkt hinzugefügt haben, der mit SQL Server 2005 wie unter Senden von SOAP-Anforderungen mithilfe des Visual Studio 2005-Clients (C#) gezeigt erstellt wurde. |
So fügen Sie einem Visual Studio-Projekt die Beispielbibliothek für SOAP-Erweiterungsheader hinzu
Kopieren Sie mit Editor den Inhalt unter C#-Code-Auflistung für SQL SOAP-Header-Beispielklassenbibliothek, fügen Sie ihn ein, und speichern Sie ihn dann unter dem Namen "SqlSoapHeader.cs" im gleichen Ordner, der auch die SOAP-Clientprojektdateien enthält.
Starten Sie auf dem Clientcomputer Microsoft Visual Studio 2005 über die Programmgruppe Microsoft Visual Studio 2005.
Klicken Sie auf Projekt öffnen.
Suchen Sie die SOAP-Clientprojektdatei (CSPROJ-Datei), und wählen Sie diese dann aus.
Führen Sie im Fenster des Projektmappen-Explorers die folgenden Schritte aus:
- Wählen Sie das Projekt anhand des Namens aus, klicken Sie mit der rechten Maustaste, zeigen Sie auf Hinzufügen, und klicken Sie dann auf Vorhandenes Element hinzufügen.
- Suchen Sie im Dialogfeld Vorhandenes Element hinzufügen die Datei SqlSoapHeader.cs in dem Ordner, in dem Sie sie in Schritt 1 gespeichert haben, und wählen Sie diese dann aus.
- Wählen Sie Alle Dateien anzeigen aus, und erweitern Sie dann den Knoten Webverweise. Wählen Sie die Datei Reference.cs aus.
Aktualisieren Sie im Fenster des Code-Editors die Datei Reference.cs, um der Endpunkt-Definitionsklasse eine öffentliche Variable hinzuzufügen. Die Variable muss der gleichen SqlSoapHeader-Klasse angehören wie der Typ des optionalen SOAP-Headers.
Wenn Sie der Datei Reference.cs z. B. eine öffentliche Eigenschaftenvariable namens "sqlSecurity" aus der SqlSoapHeader.Security-Klasse unter der Endpunkt-Klassendefinition ("sql_endpoint") hinzufügen möchten, fügen Sie die folgende Codezeile hinzu:
public class sql_endpoint : System.Web.Services.Protocols.SoapHttpClientProtocol { public SqlSoapHeader.Security sqlSecurity
Fügen Sie der Webmethode, für die Sie den SOAP-Header aktivieren möchten, die entsprechende SoapHeaderAttribute-Eigenschaft hinzu.
Wenn Sie z. B. die Security-Klasse implementieren, fügen Sie die folgende Codezeile hinzu:
[System.Web.Services.Protocols.SoapHeaderAttribute("sqlSecurity")] public int UDFReturningAScalar() {...}
Hinweis: In diesem Beispiel muss der Argumentwert von sqlSecurity
, der zusammen mitSoapHeaderAttribute
verwendet wird, dem Variablennamen entsprechen, der im vorherigen Schritt verwendet wurde.
Siehe auch
Verweis
Festlegen, dass der Server Anforderungen systemeigener XML-Webdienste überwacht
Konzepte
Bewährte Methoden für das Verwenden systemeigener XML-Webdienste