SoapDocumentMethodAttribute Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Aplicar o SoapDocumentMethodAttribute a um método especifica que as mensagens SOAP para e a partir do método usam Document formatação.
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 seguinte define o estilo de mensagem para Document para o GetUserName método de serviço Web XML. Adicionalmente, o elemento XML com o Body elemento para o pedido SOAP e a resposta SOAP são definidos para GetUserNameRequest e GetUserNameResponse, respetivamente.
<%@ 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
Observações
A Linguagem de Descrição de Serviços Web (WSDL) define dois estilos para como um método de serviço Web XML, que chama de operação, pode ser formatado numa mensagem SOAP: RPC e Document.
Document refere-se à formatação do método do 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 da mensagem após o Body elemento. A forma como as partes individuais da mensagem é determinada pelas Use propriedades e.ParameterStyle A Use propriedade determina se os parâmetros são formatados Encoded ou Literal. Determina ParameterStyle se os parâmetros estão encapsulados numa única parte de mensagem após o Body elemento ou se cada parâmetro é uma parte individual da mensagem.
Para mais detalhes, consulte Personalização da Formatação de Mensagens SOAP.
Este atributo pode ser aplicado tanto a um método de serviço Web XML no servidor como a um método da classe proxy no cliente.
Construtores
| Name | Description |
|---|---|
| SoapDocumentMethodAttribute() |
Inicializa uma nova instância da SoapDocumentMethodAttribute classe. |
| SoapDocumentMethodAttribute(String) |
Inicializa uma nova instância da SoapDocumentMethodAttribute classe, definindo a Action propriedade para o valor do |
Propriedades
| Name | Description |
|---|---|
| Action |
Recebe ou define o |
| Binding |
Obtém ou define a ligação que um método de serviço Web XML está a implementar uma operação para. |
| OneWay |
Obtém ou define se um cliente de serviço Web XML espera que o servidor Web termine de processar um método de serviço Web XML. |
| ParameterStyle |
Obtém ou define se os parâmetros estão encapsulados dentro de um único elemento XML abaixo do |
| RequestElementName |
Obtém ou define o elemento XML associado ao pedido SOAP para um método de serviço Web XML, que é definido numa descrição de serviço como uma operação. |
| RequestNamespace |
Obtém ou define o namespace associado ao pedido SOAP para 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 XML associado à resposta SOAP para um método de serviço Web XML. |
| TypeId |
Quando implementado numa classe derivada, obtém um identificador único para esta Attribute. (Herdado de Attribute) |
| Use |
Obtém ou define a formatação de parâmetros para um método de serviço Web XML dentro da parte XML de uma mensagem SOAP. |
Métodos
| Name | Description |
|---|---|
| Equals(Object) |
Devolve um valor que indica se esta instância é igual a um objeto especificado. (Herdado de Attribute) |
| GetHashCode() |
Devolve o código de hash para esta instância. (Herdado de Attribute) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| IsDefaultAttribute() |
Quando sobrescrito numa classe derivada, indica se o valor desta instância é o valor padrão para a classe derivada. (Herdado de Attribute) |
| Match(Object) |
Quando sobrescrito numa classe derivada, devolve um valor que indica se esta instância é igual a um objeto especificado. (Herdado de Attribute) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
Implementações de Interface Explícita
| Name | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de despacho. (Herdado de Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera a informação de tipo de um objeto, que pode ser usada para obter a informação de tipo para uma interface. (Herdado de Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Recupera o número de interfaces de informações de tipo que um objeto fornece (0 ou 1). (Herdado de Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Proporciona acesso a propriedades e métodos expostos por um objeto. (Herdado de Attribute) |