WebMethodAttribute Classe

Definição

Adicionar este atributo a um método dentro de um serviço Web XML criado usando ASP.NET torna o método chamável a partir de clientes Web remotos. Esta classe não pode ser herdada.

public ref class WebMethodAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Method)]
public sealed class WebMethodAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Method)>]
type WebMethodAttribute = class
    inherit Attribute
Public NotInheritable Class WebMethodAttribute
Inherits Attribute
Herança
WebMethodAttribute
Atributos

Exemplos

No exemplo abaixo, o método GetMachineName pode ser chamado remotamente através da Web, porque tem um WebMethodAttribute. GetUserName não pode ser chamada remotamente, porque não tem um WebMethodAttribute, mesmo sendo public.

<%@ WebService Language="C#" Class="Util"%>
    using System;
    using System.Web.Services;
    public class Util: WebService {
       public string GetUserName() {
          return User.Identity.Name;
       }
    
       [ WebMethod(Description="Obtains the Server Machine Name",
       EnableSession=true)]
       public string GetMachineName() {
          return Server.MachineName;
       }
    }
<%@ WebService Language="VB" Class="Util"%>

Imports System
Imports System.Web.Services

Public Class Util
    Inherits WebService
    
    Public Function GetUserName() As String
        Return User.Identity.Name
    End Function    
    
    <WebMethod(Description := "Obtains the Server Machine Name", _
        EnableSession := True)> _
    Public Function GetMachineName() As String
        
        Return Server.MachineName
    End Function
End Class

Observações

Os métodos dentro de uma classe que têm este conjunto de atributos são chamados métodos de serviço Web XML. O método e a classe devem ser públicos e a correr dentro de uma aplicação Web ASP.NET.

Construtores

Name Description
WebMethodAttribute()

Inicializa uma nova instância da WebMethodAttribute classe.

WebMethodAttribute(Boolean, TransactionOption, Int32, Boolean)

Inicializa uma nova instância da WebMethodAttribute classe.

WebMethodAttribute(Boolean, TransactionOption, Int32)

Inicializa uma nova instância da WebMethodAttribute classe.

WebMethodAttribute(Boolean, TransactionOption)

Inicializa uma nova instância da WebMethodAttribute classe.

WebMethodAttribute(Boolean)

Inicializa uma nova instância da WebMethodAttribute classe.

Propriedades

Name Description
BufferResponse

Obtém ou define se a resposta a este pedido está em buffer.

CacheDuration

Obtém ou define o número de segundos que a resposta deve ser mantida na cache.

Description

Uma mensagem descritiva que descreve o método do serviço Web XML.

EnableSession

Indica se o estado da sessão está ativado para um método de serviço Web XML.

MessageName

O nome usado para o método de serviço Web XML nos dados passados e devolvidos de um método de serviço Web XML.

TransactionOption

Indica o suporte a transações de 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)

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