Mise à jour : novembre 2007
L'ajout de cet attribut à une méthode dans un service Web XML créé à l'aide d'ASP.NET permet l'appel de cette méthode à partir de clients Web distants. Cette classe ne peut pas être héritée.
Espace de noms :
System.Web.Services Assembly :
System.Web.Services (dans System.Web.Services.dll)
Visual Basic (Déclaration)
<AttributeUsageAttribute(AttributeTargets.Method)> _
Public NotInheritable Class WebMethodAttribute _
Inherits Attribute
Visual Basic (Utilisation)
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
public final class WebMethodAttribute extends Attribute
Les méthodes d'une classe pour lesquelles cet attribut est défini sont appelées méthodes de service Web XML. La méthode et la classe doivent être publiques et s'exécuter à l'intérieur d'une application Web ASP.NET.
Dans l'exemple ci-dessous, la méthode GetMachineName peut être appelée à distance via le Web parce qu'elle possède un WebMethodAttribute tandis que la méthode GetUserName ne peut pas être appelée à distance parce qu'elle n'a pas de WebMethodAttribute, même si elle est public.
<%@ 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;
}
}
System..::.Object
System..::.Attribute
System.Web.Services..::.WebMethodAttribute
Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professionnel Édition x64, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile pour Smartphone, Windows Mobile pour Pocket PC
Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
.NET Framework
Pris en charge dans : 3.5, 3.0, 2.0, 1.1, 1.0
.NET Compact Framework
Pris en charge dans : 3.5, 2.0, 1.0
Référence