SoapDocumentMethodAttribute Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Durch die Anwendung von SoapDocumentMethodAttribute auf eine Methode wird angegeben, dass SOAP-Nachrichten an die bzw. von der Methode die Document
-Formatierung verwenden.
public ref class SoapDocumentMethodAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Method)]
public sealed class SoapDocumentMethodAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Method)>]
type SoapDocumentMethodAttribute = class
inherit Attribute
Public NotInheritable Class SoapDocumentMethodAttribute
Inherits Attribute
- Vererbung
- Attribute
Beispiele
Im folgenden Codebeispiel wird der Nachrichtenstil für die GetUserName
XML-Webdienstmethode auf Document
festgelegt. Darüber hinaus wird das XML-Element mit der Body
für die SOAP-Anforderung und die SOAP-Antwort sind-Elementgruppe GetUserNameRequest
und GetUserNameResponse
bzw.
<%@ WebService Language="C#" class="MyUser" %>
using System;
using System.Web.Services;
using System.Web.Services.Protocols;
public class MyUser : WebService {
[ SoapDocumentMethod(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 the domain name out of 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
<SoapDocumentMethod(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 the domain name out of 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
Hinweise
Web Services Description Language (WSDL) definiert zwei Stile dafür, wie eine XML-Webdienstmethode, die ein Vorgang aufruft, in einer SOAP-Nachricht formatiert werden kann: RPC
und Document
.
Document
bezieht sich auf das Formatieren der XML-Webdienstmethode gemäß einem XSD-Schema. Der Document
Stil bezieht sich auf das Formatieren des Body
Elements als Eine Reihe von einem oder mehreren Meldungsteilen, die dem Body
Element folgen. Genau, wie die einzelnen Nachrichtenteile durch die Use Eigenschaften und ParameterStyle bestimmt werden. Die Use -Eigenschaft bestimmt, ob Parameter formatiert oder Literal
formatiert Encoded
sind. Bestimmt ParameterStyle , ob die Parameter in einem einzelnen Meldungsteil gekapselt werden, der dem Body
-Element folgt, oder ob jeder Parameter ein einzelner Nachrichtenteil ist.
Weitere Informationen finden Sie unter Anpassen der SOAP-Nachrichtenformatierung.
Dieses Attribut kann sowohl auf eine XML-Webdienstmethode auf dem Server als auch auf eine Methode der Proxyklasse auf dem Client angewendet werden.
Konstruktoren
SoapDocumentMethodAttribute() |
Initialisiert eine neue Instanz der SoapDocumentMethodAttribute-Klasse. |
SoapDocumentMethodAttribute(String) |
Initialisiert eine neue Instanz der SoapDocumentMethodAttribute-Klasse und legt die Action-Eigenschaft auf den Wert des |
Eigenschaften
Action |
Ruft das |
Binding |
Ruft den Namen einer Bindung ab, für die eine XML-Webdienstmethode einen Vorgang implementiert, oder legt diesen fest. |
OneWay |
Ruft ab oder legt fest, ob ein XML-Webdienstclient darauf wartet, dass der Webserver die Verarbeitung einer XML-Webdienstmethode beendet. |
ParameterStyle |
Ruft ab oder legt fest, ob Parameter innerhalb eines einzelnen XML-Elements unterhalb des |
RequestElementName |
Ruft das XML-Element ab, das der SOAP-Anforderung für eine XML-Webdienstmethode zugeordnet ist, die in einer Dienstbeschreibung als Vorgang definiert ist, oder legt dieses fest. |
RequestNamespace |
Ruft den Namespace ab, der der SOAP-Anforderung für eine XML-Webdienstmethode zugeordnet ist, oder legt diesen fest. |
ResponseElementName |
Ruft das XML-Element ab, das der SOAP-Antwort für eine XML-Webdienstmethode zugeordnet ist, oder legt dieses fest. |
ResponseNamespace |
Ruft den XML-Namespace ab, der der SOAP-Antwort für eine XML-Webdienstmethode zugeordnet ist, oder legt diesen fest. |
TypeId |
Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab. (Geerbt von Attribute) |
Use |
Ruft die Parameterformatierung für eine XML-Webdienstmethode innerhalb des XML-Teils einer SOAP-Nachricht ab oder legt diese fest. |
Methoden
Equals(Object) |
Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist. (Geerbt von Attribute) |
GetHashCode() |
Gibt den Hashcode für diese Instanz zurück. (Geerbt von Attribute) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
IsDefaultAttribute() |
Gibt beim Überschreiben in einer abgeleiteten Klasse an, ob der Wert der Instanz der Standardwert für die abgeleitete Klasse ist. (Geerbt von Attribute) |
Match(Object) |
Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht. (Geerbt von Attribute) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu. (Geerbt von Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können. (Geerbt von Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1). (Geerbt von Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit. (Geerbt von Attribute) |