SoapDocumentMethodAttribute Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Aplicar o SoapDocumentMethodAttribute a um método especifica que as mensagens SOAP para e do método usam a formatação Document
.
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
- Herança
- Atributos
Exemplos
O exemplo de código a seguir define o estilo Document
da mensagem como para o método de GetUserName
serviço Web XML. Além disso, o elemento XML com o Body
elemento para a solicitação SOAP e a resposta SOAP são definidos como GetUserNameRequest
e GetUserNameResponse
, respectivamente.
<%@ 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
Comentários
WSDL (Linguagem de Descrição de Serviços Web) define dois estilos de como um método de serviço Web XML, que ele chama de operação, pode ser formatado em uma mensagem SOAP: RPC
e Document
.
Document
refere-se à formatação do método de serviço Web XML de acordo com um esquema XSD. O Document
estilo refere-se à formatação do Body
elemento como uma série de uma ou mais partes de mensagem seguindo o Body
elemento . Exatamente como as partes de mensagem individuais são determinadas pelas Use propriedades e ParameterStyle . A Use propriedade determina se os parâmetros são formatados Encoded
ou Literal
. O ParameterStyle determina se os parâmetros são encapsulados em uma única parte de mensagem seguindo o Body
elemento ou se cada parâmetro é uma parte de mensagem individual.
Para obter mais detalhes, consulte Personalizando a formatação de mensagens SOAP.
Esse atributo pode ser aplicado a um método de serviço Web XML no servidor e a um método da classe proxy no cliente.
Construtores
SoapDocumentMethodAttribute() |
Inicializa uma nova instância da classe SoapDocumentMethodAttribute. |
SoapDocumentMethodAttribute(String) |
Inicializa uma nova instância da classe SoapDocumentMethodAttribute, configurando a propriedade Action como o valor do parâmetro |
Propriedades
Action |
Obtém ou define o campo de cabeçalho HTTP |
Binding |
Obtém ou define o nome da associação para a qual um método de serviço Web XML está implementando uma operação. |
OneWay |
Obtém ou define se um cliente de serviço Web XML aguarda até que o servidor Web conclua o processamento de um método de serviço Web XML. |
ParameterStyle |
Obtém ou define se os parâmetros são encapsulados em um único elemento XML abaixo do elemento |
RequestElementName |
Obtém ou define o elemento XML associado à solicitação SOAP para um método de serviço Web XML, que é definido em uma descrição de serviço como uma operação. |
RequestNamespace |
Obtém ou define o namespace associado com a solicitação SOAP de um método de serviço Web XML. |
ResponseElementName |
Obtém ou define o elemento XML associado à resposta SOAP para um método de serviço Web XML. |
ResponseNamespace |
Obtém ou define o namespace de XML associado à resposta SOAP para um método de serviço Web XML. |
TypeId |
Quando implementado em uma classe derivada, obtém um identificador exclusivo para este Attribute. (Herdado de Attribute) |
Use |
Obtém ou define a formatação de parâmetro de um método de serviço Web XML na parte XML de uma mensagem SOAP. |
Métodos
Equals(Object) |
Retorna um valor que indica se essa instância é igual a um objeto especificado. (Herdado de Attribute) |
GetHashCode() |
Retorna o código hash para a instância. (Herdado de Attribute) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
IsDefaultAttribute() |
Quando substituído em uma classe derivada, indica se o valor dessa instância é o valor padrão para a classe derivada. (Herdado de Attribute) |
Match(Object) |
Quando substituído em uma classe derivada, retorna um valor que indica se essa instância é igual a um objeto especificado. (Herdado de Attribute) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição. (Herdado de Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera as informações de tipo para um objeto, que pode ser usado para obter as informações de tipo para uma interface. (Herdado de Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1). (Herdado de Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornece acesso a propriedades e métodos expostos por um objeto. (Herdado de Attribute) |