Share via


Ajout d'en-têtes SOAP à des applications clientes

SQL Server 2005 prend en charge les en-têtes d'extension SOAP lorsque vous utilisez les services Web XML natifs. Ces en-têtes peuvent être utilisés pour étendre et améliorer vos applications SOAP à l'aide des options SQL et d'autres en-têtes d'extension SOAP qui sont gérés, tels que les sessions SOAP et la sécurité des services Web. Pour plus d'informations, consultez En-têtes d'extension SOAP.

Cette rubrique présente un exemple de bibliothèque de classes qui met en œuvre tous les en-têtes d'extension SOAP facultatifs qui sont gérés par SQL Server 2005. Cette bibliothèque peut être ajoutée aux projets de clients SOAP Visual Studio 2005 existants. Il s'agit notamment des exemples d'applications fournis dans la rubrique Exemples d'applications pour l'envoi de demandes de services Web XML natifs.

Qui plus est, nous vous conseillons de lire les rubriques suivantes si vous utilisez des en-têtes qui prennent en charge la sécurité ou les sessions à l'aide des en-têtes d'extension SOAP appropriés pour chacune de ces fonctions.

ms189619.note(fr-fr,SQL.90).gifRemarque :
Les procédures suivantes partent du principe que vous avez créé une application cliente SOAP via Visual Studio 2005 et que vous avez ajouté une référence Web à un point de terminaison SOAP HTTP créé à l'aide de SQL Server 2005, comme l'indique la rubrique Envoi de demandes SOAP à l'aide du client Visual Studio 2005.

Pour ajouter l'exemple de bibliothèque d'en-têtes d'extension SOAP à un projet Visual Studio

  1. Utilisez le Bloc-notes pour copier et coller le contenu de Séquence de code C# pour la bibliothèque de classes d'exemples d'en-tête SQL SOAP et enregistrez-le sous le nom « SqlSoapHeader.cs » dans le dossier qui contient les fichiers projet de votre client SOAP.

  2. Sur l'ordinateur client, à partir du groupe de programmes Microsoft Visual Studio 2005, démarrez Microsoft Visual Studio 2005.

  3. Cliquez sur Ouvrir un projet.

  4. Recherchez et sélectionnez votre fichier projet (.csproj) de client SOAP.

  5. Dans la fenêtre de l'Explorateur de solutions, procédez comme suit :

    1. Sélectionnez le projet, cliquez avec le bouton droit et pointez sur Ajouter, puis sélectionnez Ajouter un élément existant.
    2. Dans la boîte de dialogue Ajouter un élément existant, sélectionnez le fichier SqlSoapHeader.cs à l'emplacement où vous l'aviez enregistré à l'étape 1.
    3. Sélectionnez Afficher tous les fichiers, développez le nœud Références Web, puis sélectionnez le fichier Reference.cs.
  6. Dans la fenêtre de l'Éditeur de code, mettez à jour le fichier Reference.cs pour ajouter une variable publique à la classe de définition de point de terminaison. La variable doit appartenir à la même classe SqlSoapHeader que le type d'en-tête SOAP facultatif.

    Par exemple, pour ajouter une variable de propriété publique appelée « sqlSecurity » de la classe SqlSoapHeader.Security au fichier Reference.cs sous la définition de classe de point de terminaison (« sql_endpoint »), vous devez ajouter la ligne de code suivante :

    public class sql_endpoint : System.Web.Services.Protocols.SoapHttpClientProtocol {
         public SqlSoapHeader.Security  sqlSecurity
    
  7. Ajoutez la propriété SoapHeaderAttribute appropriée à la méthode Web pour laquelle vous voulez activer l'en-tête SOAP.

    Par exemple, si vous implémentez la classe Security, vous devez alors ajouter la ligne de code suivante :

    [System.Web.Services.Protocols.SoapHeaderAttribute("sqlSecurity")]
    public int UDFReturningAScalar() {...}
    
    ms189619.note(fr-fr,SQL.90).gifRemarque :
    Dans cet exemple, la valeur d'argument sqlSecurity qui est utilisée avec SoapHeaderAttribute doit correspondre au nom de variable qui a été utilisé à l'étape précédente.

Voir aussi

Référence

Configuration du serveur pour qu'il écoute les demandes de services Web XML natifs

Concepts

Méthodes préconisées pour l'utilisation des services Web XML natifs

Aide et Informations

Assistance sur SQL Server 2005