WebMethodAttribute-Klasse
Wenn Sie dieses Attribut einer Methode in einem XML-Webdienst hinzufügen, der mit ASP.NET erstellt wurde, kann die Methode von Remotewebclients aufgerufen werden. Diese Klasse kann nicht geerbt werden.
Namespace: System.Web.Services
Assembly: System.Web.Services (in system.web.services.dll)
Syntax
'Declaration
<AttributeUsageAttribute(AttributeTargets.Method)> _
Public NotInheritable Class WebMethodAttribute
Inherits Attribute
'Usage
Dim instance As WebMethodAttribute
[AttributeUsageAttribute(AttributeTargets.Method)]
public sealed class WebMethodAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Method)]
public ref class WebMethodAttribute sealed : public Attribute
/** @attribute AttributeUsageAttribute(AttributeTargets.Method) */
public final class WebMethodAttribute extends Attribute
AttributeUsageAttribute(AttributeTargets.Method)
public final class WebMethodAttribute extends Attribute
Hinweise
Methoden in einer Klasse, bei denen dieses Attribut festgelegt ist, heißen XML-Webdienstmethoden. Die Methode und die Klasse müssen öffentlich sein und innerhalb einer ASP.NET-Webanwendung ausgeführt werden.
Thema | Position |
---|---|
Exemplarische Vorgehensweise: Erstellen und Verwenden eines ASP.NET-Webdiensts in Visual Web Developer | Erstellen von ASP.NET-Webanwendungen in Visual Studio |
Exemplarische Vorgehensweise: Erstellen und Verwenden eines ASP.NET-Webdiensts in Visual Web Developer | Erstellen von Anwendungen mit Visual Web Developer |
Beispiel
Da die GetMachineName
-Methode ein WebMethodAttribute besitzt, kann sie von einem Remotestandort über das Web aufgerufen werden. GetUserName
kann aufgrund des Fehlens von WebMethodAttribute nicht remote aufgerufen werden, obwohl die Methode public ist.
<%@ 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
<%@ 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;
}
}
Vererbungshierarchie
System.Object
System.Attribute
System.Web.Services.WebMethodAttribute
Threadsicherheit
Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Plattformen
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
.NET Compact Framework
Unterstützt in: 2.0, 1.0
Siehe auch
Referenz
WebMethodAttribute-Member
System.Web.Services-Namespace
TransactionOption
WebService