Freigeben über


Definieren von XML-Webdienstmethoden

Methoden einer Klasse zur Implementierung eines XML-Webdienstes besitzen nicht automatisch die Fähigkeit, dass im Web mit ihnen kommuniziert werden kann. Bei den mit ASP.NET erstellten XML-Webdiensten kann diese Fähigkeit jedoch leicht hinzugefügt werden. Zum Hinzufügen dieser Fähigkeit wenden Sie ein WebMethod-Attribut auf öffentliche Methoden an. Methoden eines XML-Webdienstes, mit denen im Web kommuniziert werden kann, werden als XML-Webdienstmethoden bezeichnet.

XML-Webdienstmethoden sind ein integraler Bestandteil der Meldungsübermittlungs-Infrastruktur, die von XML-Webdiensten eingesetzt wird. Ein Client und ein XML-Webdienst kommunizieren standardmäßig über Meldungen, die so genannten SOAP-Meldungen. Clients senden eine SOAP-Anforderung an einen XML-Webdienst, und eine XML-Webdienstmethode gibt eine SOAP-Antwort zurück. XML-Webdienste definieren den Typ der akzeptierten Meldungen mit Hilfe von Operationen, wie durch die Web Services Description Language (WSDL) definiert. Diese Operationen stehen in Wechselbeziehung mit den einzelnen XML-Webdienstmethoden innerhalb eines XML-Webdienstes. Obwohl alle diese XML-Webdienstmethoden in ASP.NET über eine Methode einer Klasse definiert werden, darf nicht übersehen werden, dass die Daten, die schließlich im Netzwerk übertragen werden, in XML serialisiert werden müssen. Daher ist es wichtig zu unterscheiden, dass XML-Webdienste keinen Ersatz für DCOM darstellen, es handelt sich vielmehr um eine Meldungsübermittlungs-Infrastruktur, in der die Kommunikation plattformübergreifend gemäß Industriestandards stattfindet.

So deklarieren Sie eine XML-Webdienstmethode

  1. Deklarieren Sie einen XML-Webdienst, indem Sie die @ WebService-Direktive hinzufügen. Weitere Informationen finden Sie unter Deklarieren eines XML-Webdienstes.
  2. Fügen Sie der Klasse, durch die der XML-Webdienst implementiert wird, öffentliche Methoden hinzu.
  3. Wenden Sie das WebMethod-Attribut auf die öffentlichen Methoden an, die Operationen zugeordnet werden sollen.

Das folgende Codebeispiel enthält zwei öffentliche Methoden, von denen eine eine XML-Webdienstmethode ist. Die Multiply-Methode ist eine XML-Webdienstmethode, da ein WebMethod-Attribut auf sie angewendet wurde.

<%@ WebService Language="C#" Class="Util" %>
    using System;
    using System.Web.Services;
    public class Util: WebService 
     {
       public int Add(int a, int b) 
       {
          return a + b;
       }
    
       [ WebMethod]       public long Multiply(int a, int b) 
       {
          return a * b;
       }
   }
[Visual Basic]
<%@ WebService Language="VB" Class="Util" %>
    Imports System
    Imports System.Web.Services
    Public Class Util 
       Inherits WebService

       Public Function Add(a As Integer, b As Integer) As Integer
          Return a + b
       End Function
    
       < WebMethod()> _       Public Function Multiply(a As Integer, b As Integer) As Long
          Return a * b
       End Function
   End Class

Siehe auch

WebMethodAttribute-Klasse | Erstellen von XML-Webdiensten mit ASP.NET | Deklarieren eines XML-Webdienstes