WebMethodAttribute Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Agregar este atributo a un método dentro de un servicio web XML creado mediante ASP.NET hace que el método se pueda llamar desde clientes web remotos. Esta clase no puede heredarse.
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
- Herencia
- Atributos
Ejemplos
En el ejemplo siguiente, el método GetMachineName se puede llamar de forma remota a través de la Web, porque tiene un WebMethodAttribute.
GetUserName no se puede llamar de forma remota, porque no tiene un WebMethodAttributeelemento , aunque sea 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
Comentarios
Los métodos de una clase que tienen este conjunto de atributos se denominan métodos de servicio web XML. El método y la clase deben ser públicos y ejecutarse dentro de una aplicación web ASP.NET.
Constructores
| Nombre | Description |
|---|---|
| WebMethodAttribute() |
Inicializa una nueva instancia de la clase WebMethodAttribute. |
| WebMethodAttribute(Boolean, TransactionOption, Int32, Boolean) |
Inicializa una nueva instancia de la clase WebMethodAttribute. |
| WebMethodAttribute(Boolean, TransactionOption, Int32) |
Inicializa una nueva instancia de la clase WebMethodAttribute. |
| WebMethodAttribute(Boolean, TransactionOption) |
Inicializa una nueva instancia de la clase WebMethodAttribute. |
| WebMethodAttribute(Boolean) |
Inicializa una nueva instancia de la clase WebMethodAttribute. |
Propiedades
| Nombre | Description |
|---|---|
| BufferResponse |
Obtiene o establece si la respuesta de esta solicitud se almacena en búfer. |
| CacheDuration |
Obtiene o establece el número de segundos que la respuesta debe mantenerse en la memoria caché. |
| Description |
Mensaje descriptivo que describe el método de servicio web XML. |
| EnableSession |
Indica si el estado de sesión está habilitado para un método de servicio web XML. |
| MessageName |
Nombre utilizado para el método de servicio web XML en los datos pasados y devueltos desde un método de servicio web XML. |
| TransactionOption |
Indica la compatibilidad de transacciones de un método de servicio web XML. |
| TypeId |
Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute. (Heredado de Attribute) |
Métodos
| Nombre | Description |
|---|---|
| Equals(Object) |
Devuelve un valor que indica si esta instancia es igual a un objeto especificado. (Heredado de Attribute) |
| GetHashCode() |
Devuelve el código hash de esta instancia. (Heredado de Attribute) |
| GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
| IsDefaultAttribute() |
Cuando se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada. (Heredado de Attribute) |
| Match(Object) |
Cuando se reemplaza en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado. (Heredado de Attribute) |
| MemberwiseClone() |
Crea una copia superficial del Objectactual. (Heredado de Object) |
| ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. (Heredado de Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera la información de tipo de un objeto, que se puede usar para obtener la información de tipo de una interfaz. (Heredado de Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1). (Heredado de Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Proporciona acceso a propiedades y métodos expuestos por un objeto . (Heredado de Attribute) |