WebMethodAttribute 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.
Adicionar esse atributo a um método em um serviço Web XML criado usando ASP.NET torna o método callable de clientes Web remotos. Essa 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
- Atributos
Exemplos
No exemplo abaixo, o método GetMachineName pode ser chamado remotamente pela Web, porque ele tem um WebMethodAttribute.
GetUserName não pode ser chamado remotamente, porque ele não tem um WebMethodAttribute, mesmo que seja 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
Comentários
Os métodos em uma classe que têm esse conjunto de atributos são chamados de métodos de serviço Web XML. O método e a classe devem ser públicos e em execução dentro de um aplicativo Web ASP.NET.
Construtores
| Nome | Description |
|---|---|
| WebMethodAttribute() |
Inicializa uma nova instância da classe WebMethodAttribute. |
| WebMethodAttribute(Boolean, TransactionOption, Int32, Boolean) |
Inicializa uma nova instância da classe WebMethodAttribute. |
| WebMethodAttribute(Boolean, TransactionOption, Int32) |
Inicializa uma nova instância da classe WebMethodAttribute. |
| WebMethodAttribute(Boolean, TransactionOption) |
Inicializa uma nova instância da classe WebMethodAttribute. |
| WebMethodAttribute(Boolean) |
Inicializa uma nova instância da classe WebMethodAttribute. |
Propriedades
| Nome | Description |
|---|---|
| BufferResponse |
Obtém ou define se a resposta para essa solicitação é armazenada em buffer. |
| CacheDuration |
Obtém ou define o número de segundos que a resposta deve ser mantida no cache. |
| Description |
Uma mensagem descritiva que descreve o método de serviço Web XML. |
| EnableSession |
Indica se o estado da sessão está habilitado 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 retornados de um método de serviço Web XML. |
| TransactionOption |
Indica o suporte à transação de um método de serviço Web XML. |
| TypeId |
Quando implementado em uma classe derivada, obtém um identificador exclusivo para esse Attribute. (Herdado de Attribute) |
Métodos
| Nome | Description |
|---|---|
| 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 dessa 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 Objectatual. (Herdado de Object) |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| _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 de um objeto, que podem ser usadas para obter as informações de tipo de 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) |