Поделиться через


WebMethodAttribute Класс

Определение

Добавление этого атрибута к методу в веб-службе XML, созданной с помощью ASP.NET, делает возможным вызов этого метода для удаленных веб-клиентов. Этот класс не наследуется.

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
Наследование
WebMethodAttribute
Атрибуты

Примеры

В приведенном ниже примере метод GetMachineName можно удаленно вызывать через Интернет, так как он имеет WebMethodAttribute. GetUserName не может вызываться удаленно, так как он не имеет WebMethodAttribute, даже если это 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

Комментарии

Методы в классе с этим набором атрибутов называются методами веб-службы XML. Метод и класс должны быть открытыми и выполняться в веб-приложении ASP.NET.

Конструкторы

WebMethodAttribute()

Инициализирует новый экземпляр класса WebMethodAttribute.

WebMethodAttribute(Boolean, TransactionOption, Int32, Boolean)

Инициализирует новый экземпляр класса WebMethodAttribute.

WebMethodAttribute(Boolean, TransactionOption, Int32)

Инициализирует новый экземпляр класса WebMethodAttribute.

WebMethodAttribute(Boolean, TransactionOption)

Инициализирует новый экземпляр класса WebMethodAttribute.

WebMethodAttribute(Boolean)

Инициализирует новый экземпляр класса WebMethodAttribute.

Свойства

BufferResponse

Получает или задает сведения о том, следует ли записывать ответ на этот запрос в буфер.

CacheDuration

Получает или задает число секунд, в течение которого ответ должен храниться в кэше.

Description

Описательное сообщение для метода веб-службы XML.

EnableSession

Указывает, включено ли состояние сеанса для метода веб-службы XML.

MessageName

Имя, используемое для метода веб-службы XML в данных, передаваемых в метод веб-службы XML и возвращаемых им.

TransactionOption

Обозначает поддержку транзакций для метода веб-службы XML.

TypeId

В случае реализации в производном классе возвращает уникальный идентификатор для этого атрибута Attribute.

(Унаследовано от Attribute)

Методы

Equals(Object)

Возвращает значение, показывающее, равен ли экземпляр указанному объекту.

(Унаследовано от Attribute)
GetHashCode()

Возвращает хэш-код данного экземпляра.

(Унаследовано от Attribute)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
IsDefaultAttribute()

При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса.

(Унаследовано от Attribute)
Match(Object)

При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту.

(Унаследовано от Attribute)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.

(Унаследовано от Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Возвращает сведения о типе объекта, которые можно использовать для получения сведений о типе интерфейса.

(Унаследовано от Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).

(Унаследовано от Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Предоставляет доступ к открытым свойствам и методам объекта.

(Унаследовано от Attribute)

Применяется к

См. также раздел