SoapRpcMethodAttribute Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Spécifie que les messages SOAP envoyés à et à partir de la méthode utilisent RPC mise en forme.
public ref class SoapRpcMethodAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Method)]
public sealed class SoapRpcMethodAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Method)>]
type SoapRpcMethodAttribute = class
inherit Attribute
Public NotInheritable Class SoapRpcMethodAttribute
Inherits Attribute
- Héritage
- Attributs
Exemples
L’exemple de code suivant définit le style Rpc de message pour la méthode de GetUserName service Web XML.
<%@ WebService Language="C#" class="MyUser" %>
using System;
using System.Web.Services;
using System.Web.Services.Protocols;
public class MyUser : WebService {
[ SoapRpcMethod(Action="http://www.contoso.com/Sample",
RequestNamespace="http://www.contoso.com/Request",
RequestElementName="GetUserNameRequest",
ResponseNamespace="http://www.contoso.com/Response",
ResponseElementName="GetUserNameResponse")]
[ WebMethod(Description="Obtains the User Name") ]
public UserName GetUserName() {
string temp;
int pos;
UserName NewUser = new UserName();
// Get the full user name, including the domain name if applicable.
temp = User.Identity.Name;
// Determine whether the user is part of a domain by searching for a backslash.
pos = temp.IndexOf("\\");
// Parse out the domain name from the string, if one exists.
if (pos <= 0)
NewUser.Name = User.Identity.Name;
else {
NewUser.Name = temp.Remove(0,pos+1);
NewUser.Domain = temp.Remove(pos,temp.Length-pos);
}
return NewUser;
}
}
public class UserName {
public string Name;
public string Domain;
}
<%@ WebService Language="VB" class="MyUser" %>
Imports System
Imports System.Web.Services
Imports System.Web.Services.Protocols
Public Class MyUser
Inherits WebService
<SoapRpcMethod(Action := "http://www.contoso.com/Sample", _
RequestNamespace := "http://www.contoso.com/Request", _
RequestElementName := "GetUserNameRequest", _
ResponseNamespace := "http://www.contoso.com/Response", _
ResponseElementName := "GetUserNameResponse"), _
WebMethod(Description := "Obtains the User Name")> _
Public Function _
GetUserName() As UserName
Dim temp As String
Dim pos As Integer
Dim NewUser As New UserName()
' Get the full user name, including the domain name if applicable.
temp = User.Identity.Name
' Determine whether the user is part of a domain by searching for a backslash.
pos = temp.IndexOf("\")
' Parse out the domain name from the string, if one exists.
If pos <= 0 Then
NewUser.Name = User.Identity.Name
Else
NewUser.Name = temp.Remove(0, pos + 1)
NewUser.Domain = temp.Remove(pos, temp.Length - pos)
End If
Return NewUser
End Function
End Class
Public Class UserName
Public Name As String
Public Domain As String
End Class
Remarques
Web Services Description Language (WSDL) définit deux styles pour la façon dont une méthode de service web XML, ou une opération, peut être mis en forme dans un message SOAP : RPC et Document.
RPC la mise en forme fait référence à la mise en forme de l’opération en fonction de la spécification SOAP pour l’utilisation de SOAP pour RPC ; autrement appelé section 7 de la spécification SOAP.
RPC La mise en forme indique que tous les paramètres sont encapsulés dans un seul élément XML nommé après la méthode de service Web XML et que chaque élément XML dans cet élément XML représente un paramètre nommé après le paramètre qu’il représente.
Les messages SOAP mis en forme à la fois dans les RPC styles et Document peuvent être utilisés pour communiquer avec un service Web XML de manière à un appel de procédure distante (RPC) ; toutefois, le Document style peut également être facilement utilisé pour communiquer de manière faiblement couplée. Par conséquent, les Document services web XML de style sont recommandés. Pour plus d’informations, consultez la Customizing SOAP Messages rubrique.
Pour plus d’informations, consultez Personnalisation de la mise en forme des messages SOAP.
Cet attribut peut être appliqué à une méthode de service Web XML sur le serveur et à une classe proxy sur le client. Méthodes de service web XML dont la OneWay propriété est définie true pour ne pas avoir accès à leur HttpContext. Par conséquent, l’accès à l’une des propriétés de la WebService classe retourne null.
Constructeurs
| Nom | Description |
|---|---|
| SoapRpcMethodAttribute() |
Initialise une nouvelle instance de la SoapRpcMethodAttribute classe, en définissant toutes les propriétés sur leurs valeurs par défaut. |
| SoapRpcMethodAttribute(String) |
Initialise une nouvelle instance de la SoapRpcMethodAttribute classe, en définissant la Action propriété sur la valeur du |
Propriétés
| Nom | Description |
|---|---|
| Action |
Obtient ou définit le |
| Binding |
Obtient ou définit la liaison pour laquelle une méthode de service Web XML implémente une opération. |
| OneWay |
Obtient ou définit si un client de service web XML attend que le serveur Web termine le traitement d’une méthode de service Web XML. |
| RequestElementName |
Obtient ou définit l’élément XML associé à la requête SOAP pour une méthode de service web XML. |
| RequestNamespace |
Obtient ou définit l’espace de noms XML associé à la requête SOAP pour une méthode de service web XML. |
| ResponseElementName |
Obtient ou définit l’élément XML associé à la réponse SOAP pour une méthode de service web XML. |
| ResponseNamespace |
Obtient ou définit l’espace de noms XML associé à la réponse SOAP pour une méthode de service web XML. |
| TypeId |
En cas d’implémentation dans une classe dérivée, obtient un identificateur unique pour cette Attribute. (Hérité de Attribute) |
| Use |
Obtient ou définit la liaison utilisée lors de l’appel de la méthode. |
Méthodes
| Nom | Description |
|---|---|
| Equals(Object) |
Retourne une valeur qui indique si cette instance est égale à un objet spécifié. (Hérité de Attribute) |
| GetHashCode() |
Retourne le code de hachage pour cette instance. (Hérité de Attribute) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| IsDefaultAttribute() |
En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut de la classe dérivée. (Hérité de Attribute) |
| Match(Object) |
En cas de substitution dans une classe dérivée, retourne une valeur qui indique si cette instance est égale à un objet spécifié. (Hérité de Attribute) |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. (Hérité de Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Récupère les informations de type d’un objet, qui peuvent être utilisées pour obtenir les informations de type d’une interface. (Hérité de Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). (Hérité de Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fournit l’accès aux propriétés et méthodes exposées par un objet. (Hérité de Attribute) |