WebServiceBindingAttribute Classe

Definição

Declara uma ligação que define um ou mais métodos de serviço Web XML. Esta classe não pode ser herdada.

public ref class WebServiceBindingAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true)]
public sealed class WebServiceBindingAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface, AllowMultiple=true)]
public sealed class WebServiceBindingAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true)>]
type WebServiceBindingAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface, AllowMultiple=true)>]
type WebServiceBindingAttribute = class
    inherit Attribute
Public NotInheritable Class WebServiceBindingAttribute
Inherits Attribute
Herança
WebServiceBindingAttribute
Atributos

Exemplos

O seguinte serviço Web XML implementa operações a partir de quatro bindings. Especificamente, o serviço Web XML declara três ligações para as quais implementa operações, aplicando três WebServiceBindingAttribute atributos ao serviço Web XML.

Para especificar para qual a ligação que um método de serviço Web XML está a implementar uma operação, aplica-se a SoapDocumentMethodAttribute a cada um dos métodos do serviço Web XML, exceto DefaultBindingMethod. Ao não especificar uma ligação para DefaultBindingMethod, está a implementar uma operação sobre a ligação padrão para o serviço Web XML.

<%@ WebService Language="C#" class="BindingSample" %>
 using System;
 using System.Web.Services;
 using System.Web.Services.Protocols;

 // Binding is defined in this XML Web service and uses the default namespace.
 [ WebServiceBinding(Name="LocalBinding")]

 // Binding is defined in this XML Web service, but it is not a part of the default namespace.
 [ WebServiceBinding(Name="LocalBindingNonDefaultNamespace", 
             Namespace="http://www.contoso.com/MyBinding" )]

 // Binding is defined on a remote server, but this XML Web service implements at least one operation in that binding.
 [ WebServiceBinding(Name="RemoteBinding", 
          Namespace="http://www.contoso.com/MyBinding",
          Location="http://www.contoso.com/MySevice.asmx?wsdl")]
 public class BindingSample  {

      [ SoapDocumentMethod(Binding="LocalBinding")]
      [ WebMethod() ]
      public string LocalBindingMethod() {
               return "Member of binding defined in this XML Web service and member of the default namespace";
      }
      [ SoapDocumentMethod(Binding="LocalBindingNonDefaultNamespace")] 
      [ WebMethod() ]
      public string LocalBindingNonDefaultNamespaceMethod() {
              return "Member of binding defined in this XML Web service, but a part of a different namespace";
      }

     [ SoapDocumentMethod(Binding="RemoteBinding")] 
     [ WebMethod() ]
      public string RemoteBindingMethod() {
              return "Member of a binding defined on another server";
      }

      [ WebMethod() ]
      public string DefaultBindingMethod() {
              return "Member of the default binding";
      }
 
 }
<%@ WebService Language="VB" class="BindingSample" %>
Imports System
Imports System.Web.Services
Imports System.Web.Services.Protocols

' Binding is defined in this XML Web service and uses the default namespace.
' Binding is defined in this XML Web service, but it is not a part of the default
' namespace.
' Binding is defined on a remote server, but this XML Web service implements at
' least one operation in that binding.
<WebServiceBinding(Name := "LocalBinding"), _ 
 WebServiceBinding(Name := "LocalBindingNonDefaultNamespace", _ 
                   Namespace := "http://www.contoso.com/MyBinding"), _     
 WebServiceBinding(Name := "RemoteBinding", _ 
                   Namespace := "http://www.contoso.com/MyBinding", _
                   Location := "http://www.contoso.com/MySevice.asmx?wsdl")> _
Public Class BindingSample
    
    <SoapDocumentMethod(Binding := "LocalBinding"), WebMethod()> _
    Public Function LocalBindingMethod() As String
        
        Return "Member of binding defined in this XML Web service and member of the default namespace"
    End Function
    
    <SoapDocumentMethod(Binding := "LocalBindingNonDefaultNamespace"), WebMethod()> _
    Public Function LocalBindingNonDefaultNamespaceMethod() As String
    
        Return "Member o1f binding defined in this XML Web service, but a part of a different namespace"
    End Function    
    
    <SoapDocumentMethod(Binding := "RemoteBinding"), WebMethod()> _
    Public Function RemoteBindingMethod() As String
    
        Return "Member of a binding defined on another server"
    End Function    
    
    <WebMethod()> _
    Public Function DefaultBindingMethod() As String
    
        Return "Member of the default binding"
    End Function
End Class

Observações

Uma ligação, conforme definida pela Web Services Description Language (WSDL), é semelhante a uma interface, no sentido em que define um conjunto concreto de operações. Cada método de serviço Web XML é uma operação dentro de uma ligação específica. Os métodos de serviço Web XML são membros da ligação padrão para um serviço Web XML ou de uma ligação especificada dentro de uma WebServiceBindingAttribute aplicada a uma classe que implementa um serviço Web XML. Um serviço Web XML pode implementar múltiplos bindings, aplicando múltiplos WebServiceBindingAttribute atributos a um serviço Web XML.

Uma vez que um ou mais WebServiceAttribute atributos são aplicados a um serviço Web XML, um SoapDocumentMethodAttribute ou SoapRpcMethodAttribute pode ser aplicado a métodos individuais de serviço Web XML para indicar a operação de ligação implementada por um determinado método de serviço Web XML. Defina a Binding propriedade de SoapDocumentMethodAttribute ou SoapRpcMethodAttribute para especificar a ligação que um método de serviço Web XML está a implementar uma operação para.

Construtores

Name Description
WebServiceBindingAttribute()

Inicializa uma nova instância da WebServiceBindingAttribute classe.

WebServiceBindingAttribute(String, String, String)

Inicializa uma nova instância da WebServiceBindingAttribute classe.

WebServiceBindingAttribute(String, String)

Inicializa uma nova instância da WebServiceBindingAttribute classe.

WebServiceBindingAttribute(String)

Inicializa uma nova instância da WebServiceBindingAttribute classe que define o nome da ligação que o método do serviço Web XML está a implementar.

Propriedades

Name Description
ConformsTo

Obtém ou define a especificação de Interoperabilidade de Serviços Web (WSI) à qual a vinculação afirma estar em conformidade.

EmitConformanceClaims

Recebe ou define um valor que indica se a vinculação emite reivindicações de conformidade.

Location

Obtém ou define o local onde a ligação é definida.

Name

Recebe ou define o nome da ligação.

Namespace

Obtém ou define o namespace associado à associação.

TypeId

Quando implementado numa classe derivada, obtém um identificador único para esta Attribute.

(Herdado de Attribute)

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)

Aplica-se a

Ver também