SoapDocumentMethodAttribute Třída

Definice

Použití SoapDocumentMethodAttribute metody na metodu určuje, že zprávy SOAP do a z metody používají Document formátování.

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
Dědičnost
SoapDocumentMethodAttribute
Atributy

Příklady

Následující příklad kódu nastaví styl zprávy na Document pro metodu GetUserName webové služby XML. Navíc element XML s elementem Body pro požadavek SOAP a odpověď SOAP jsou nastaveny na GetUserNameRequest a GetUserNameResponsev uvedeném pořadí.

<%@ 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

Poznámky

WSDL (Web Services Description Language) definuje dva styly pro formátování metody webové služby XML, kterou volá operaci, ve zprávě SOAP: RPC a Document. Document odkazuje na formátování metody webové služby XML podle schématu XSD. Styl Document odkazuje na formátování elementu Body jako řadu jedné nebo více částí zprávy za elementem Body . Přesně to, jak jsou jednotlivé části zprávy určeny vlastnostmi Use a ParameterStyle Vlastnost Use určuje, jestli jsou parametry formátované Encoded nebo Literal. Určuje ParameterStyle , zda jsou parametry zapouzdřeny v jedné části zprávy za elementem Body nebo zda je každý parametr samostatnou částí zprávy.

Další podrobnosti najdete v tématu Přizpůsobení formátování zpráv SOAP.

Tento atribut lze použít pro metodu webové služby XML na serveru i metodu třídy proxy na klientovi.

Konstruktory

SoapDocumentMethodAttribute()

Inicializuje novou instanci SoapDocumentMethodAttribute třídy.

SoapDocumentMethodAttribute(String)

Inicializuje novou instanci SoapDocumentMethodAttribute třídy a nastaví Action vlastnost na hodnotu parametru action .

Vlastnosti

Action

Získá nebo nastaví pole hlavičky SOAPAction HTTP požadavku SOAP.

Binding

Získá nebo nastaví vazbu metoda webové služby XML implementuje operaci pro.

OneWay

Získá nebo nastaví, zda klient webové služby XML čeká na webový server dokončit zpracování xml webové služby metoda.

ParameterStyle

Získá nebo nastaví, zda parametry jsou zapouzdřeny v jednom xml elementu pod Body elementem v části XML soap zprávy.

RequestElementName

Získá nebo nastaví xml element přidružený k požadavku SOAP pro xml webové služby metoda, která je definována v popisu služby jako operace.

RequestNamespace

Získá nebo nastaví obor názvů přidružený k požadavku SOAP pro metodu webové služby XML.

ResponseElementName

Získá nebo nastaví xml element přidružené k soap odpověď pro xml webové služby metody.

ResponseNamespace

Získá nebo nastaví obor názvů XML přidružené k soap odpověď pro xml webové služby metody.

TypeId

Při implementaci v odvozené třídě získá jedinečný identifikátor pro tuto Attributetřídu .

(Zděděno od Attribute)
Use

Získá nebo nastaví formátování parametru pro xml webové služby metoda v xml část soap zprávy.

Metody

Equals(Object)

Vrací hodnotu, která určuje, zda je tato instance rovna zadanému objektu.

(Zděděno od Attribute)
GetHashCode()

Vrátí hodnotu hash pro tuto instanci.

(Zděděno od Attribute)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
IsDefaultAttribute()

Při přepsání v odvozené třídě označuje, zda je hodnota této instance výchozí hodnotou pro odvozenou třídu.

(Zděděno od Attribute)
Match(Object)

Při přepsání v odvozené třídě vrátí hodnotu, která označuje, zda se tato instance rovná zadanému objektu.

(Zděděno od Attribute)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání.

(Zděděno od Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Načte informace o typu objektu, které lze použít k získání informací o typu pro rozhraní.

(Zděděno od Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1).

(Zděděno od Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Poskytuje přístup k vlastnostem a metodám vystaveným objektem.

(Zděděno od Attribute)

Platí pro

Viz také