Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel hilft Ihnen beim Schreiben eines Webdiensts namens MathService, der Methoden zum Hinzufügen, Subtrahieren, Dividieren und Multiplizieren von zwei Zahlen verfügbar macht.
Originalproduktversion: Visual C# .NET
Ursprüngliche KB-Nummer: 308359
Anforderungen
In der folgenden Liste werden die empfohlenen Hardware, Software, Fähigkeiten und Kenntnisse beschrieben, die Sie benötigen:
- Microsoft Windows
- Internetinformationsserver
- Visual Studio .NET
In diesem Artikel wird davon ausgegangen, dass Sie mit dem Thema vertraut sind: Verwenden der integrierten Entwicklungsumgebung von Visual Studio .NET.
Schreiben eines ASMX-Webdiensts
Öffnen Sie Visual Studio .NET.
Wählen Sie im Menü "Datei" die Option "Neu" und dann "Projekt" aus. Wählen Sie unter Projekttypen visual C#-Projekte aus. Wählen Sie dann unter "Vorlagen" ASP.NET Webdienst aus. Geben Sie MathService in das Textfeld "Speicherort " ein, um den Standardnamen (WebService1) in MathService zu ändern.
Ändern Sie den Namen des Standardwebdiensts, der aus Service1.asmx erstellt wird, in MathService.asmx.
Wählen Sie "Klicken" aus, um in der Designerumgebung zur Codeansicht zu wechseln.
Definieren Sie Methoden, die die Funktionalität Ihres Diensts kapseln. Jede Methode, die vom Dienst verfügbar gemacht wird, muss mit einem
WebMethod
Attribut davor gekennzeichnet werden. Ohne dieses Attribut wird die Methode nicht vom Dienst verfügbar gemacht.Notiz
Nicht jede Methode muss über das
WebMethod
Attribut verfügen. Es ist hilfreich, einige Implementierungsdetails auszublenden, die von Methoden des öffentlichen Webdiensts aufgerufen werden, oder für den Fall, in dem dieWebService
Klasse auch in lokalen Anwendungen verwendet wird. Eine lokale Anwendung kann eine beliebige öffentliche Klasse verwenden, aber nurWebMethod
Auf Methoden kann remote als Webdienste zugegriffen werden.Fügen Sie der von Ihnen erstellten Klasse die folgende Methode hinzu
MathServices
:[WebMethod] public int Add(int a, int b) { return(a + b); } [WebMethod] public System.Single Subtract(System.Single A, System.Single B) { return (A - B); } [WebMethod] public System.Single Multiply(System.Single A, System.Single B) { return A * B; } [WebMethod] public System.Single Divide(System.Single A, System.Single B) { if(B == 0) return -1; return Convert.ToSingle(A / B); }
Wählen Sie "Erstellen " im Menü "Erstellen " aus, um den Webdienst zu erstellen.
Navigieren Sie zur MathService.asmx-Webdienstseite , um den Webdienst zu testen. Wenn Sie den lokalen Computer so festlegen, dass die Seite gehostet wird, lautet
http://localhost/MathService/MathService.asmx
die URL .
Die ASP.NET Laufzeit gibt eine Webdiensthilfeseite zurück, die den Webdienst beschreibt. Auf dieser Seite können Sie auch verschiedene Webdienstmethoden testen.
Verwenden eines Webdiensts
Öffnen Sie Visual Studio .NET.
Wählen Sie unter Projekttypen visual C#-Projekte aus, und wählen Sie dann unter "Vorlagen" die Konsolenanwendung aus.
Fügen Sie der neuen Konsolenanwendung einen Verweis für den MathService-Webdienst hinzu.
Dieser Schritt erstellt eine Proxyklasse auf dem Clientcomputer. Nachdem die Proxyklasse vorhanden ist, können Sie Objekte basierend auf der Klasse erstellen. Jeder Methodenaufruf, der mit dem Objekt ausgeführt wird, geht dann an den URI (Uniform Resource Identifier) des Webdiensts (normalerweise als SOAP-Anforderung).
- Wählen Sie im Menü "Projekt " die Option "Webverweis hinzufügen" aus.
- Geben Sie im Dialogfeld "Webverweis hinzufügen" die URL für den Webdienst in das Textfeld "Adresse " ein, und drücken Sie die EINGABETASTE. Wenn Sie den lokalen Computer so festlegen, dass der Webdienst gehostet wird, lautet
http://localhost/MathService/MathService.asmx
die URL . - Klicken Sie auf Verweis hinzufügen. Alternativ können Sie die URL zur Ermittlungsdatei (MathService.vsdisco) eingeben oder Im linken Bereich Webverweise auf dem lokalen Webserver auswählen, um den MathService-Dienst aus der Liste auszuwählen.
- Erweitern Sie den Abschnitt "Webverweise" von Projektmappen-Explorer, und notieren Sie sich den verwendeten Namespace.
Erstellen Sie eine Instanz des erstellten Proxyobjekts. Platzieren Sie den folgenden Code in der aufgerufenen
Main
Funktion:localhost.Service1 myMathService = new localhost.Service1();
Rufen Sie eine Methode für das Proxyobjekt auf, das Sie im vorherigen Schritt erstellt haben, wie folgt:
Console.Write("2 + 4 = {0}", myMathService.Add(2,4));
Wählen Sie "Erstellen" im Menü "Erstellen" aus, um die Konsolenanwendung zu erstellen.
Wählen Sie "Start " im Menü "Debuggen " aus, um die Anwendung zu testen.
Schließen Sie das Projekt, und speichern Sie es.
References
Weitere Informationen finden Sie im Thema zum Programmieren des Web mit Webdiensten in der Visual Studio .NET-Hilfe oder im Thema ASP.NET Webdienste und ASP.NET Webdienstclients im .NET Framework Developer's Guide.
Weitere Informationen finden Sie auf den folgenden Websites: