Walkthrough: Creating and Accessing WCF Services
Veröffentlicht: Juni 2016
In dieser exemplarischen Vorgehensweise wird gezeigt, wie Sie einen einfachen Windows Communication Foundation (WCF)-Dienst erstellen, testen und über eine Windows Forms-Anwendung darauf zugreifen können.
Hinweis
Auf Ihrem Computer werden möglicherweise andere Namen oder Speicherorte für die Benutzeroberflächenelemente von Visual Studio angezeigt als die in den folgenden Anweisungen aufgeführten. Diese Elemente sind von der jeweiligen Visual Studio-Version und den verwendeten Einstellungen abhängig. Weitere Informationen finden Sie unter Personalisieren der IDE.
Erstellen des Diensts
So erstellen Sie einen WCF-Dienst
Zeigen Sie im Menü Datei auf Neu, und klicken Sie dann auf Projekt.
Erweitern Sie im Dialogfeld Neues Projekt den Knoten Visual Basic oder Visual C#, und klicken Sie anschließend auf WCF, gefolgt von WCF-Dienstbibliothek. Klicken Sie auf OK, um das Projekt zu öffnen.
Hinweis
Dadurch wird ein funktionierender Dienst erstellt, der getestet und aufgerufen werden kann. Die folgenden beiden Schritte veranschaulichen, wie Sie die Standardmethode ändern können, um einen anderen Datentyp zu verwenden. In einer echten Anwendung würden Sie dem Dienst auch Ihre eigenen Funktionen hinzufügen.
-
Doppelklicken Sie im Projektmappen-Explorer auf "IService1.vb" oder "IService1.cs", und suchen Sie die folgende Zeile:
[OperationContract] string GetData(int value);
<OperationContract()> Function GetData(ByVal value As Integer) As String
Ändern Sie den Typ für den
value
-Parameter inString
:[OperationContract] string GetData(string value);
<OperationContract()> Function GetData(ByVal value As String) As String
Beachten Sie im obigen Code die
<OperationContract()>
- oder[OperationContract]
-Attribute. Diese Attribute sind für jede Methode erforderlich, die vom Dienst zur Verfügung gestellt wird. -
Doppelklicken Sie im Projektmappen-Explorer auf "Service1.vb" oder "Service1.cs", und suchen Sie die folgende Zeile:
public string GetData(int value) { return string.Format("You entered: {0}", value); }
Public Function GetData(ByVal value As Integer) As String Implements IService1.GetData Return String.Format("You entered: {0}", value) End Function
Ändern Sie den Typ für den value-Parameter in
String
:public string GetData(string value) { return string.Format("You entered: {0}", value); }
Public Function GetData(ByVal value As String) As String Implements IService1.GetData Return String.Format("You entered: {0}", value) End Function
Testen des Diensts
So testen Sie einen WCF-Dienst
Drücken Sie F5, um die Anwendung auszuführen. Ein WCF-Testclient-Formular wird angezeigt und lädt den Dienst.
Doppelklicken Sie im WCF-Testclient-Formular auf die GetData()-Methode unter IService1. Die Registerkarte GetData wird angezeigt.
Wählen Sie im Feld Anforderung das Feld Wert aus, und geben Sie
Hello
ein.Klicken Sie auf die Schaltfläche Aufrufen. Wenn ein Dialogfeld mit einer Sicherheitswarnung angezeigt wird, klicken Sie auf OK. Das Ergebnis wird im Feld Antwort angezeigt.
Klicken Sie im Menü Datei auf Beenden, um das Testformular zu schließen.
Zugriff auf den Dienst
So greifen Sie auf einen WCF-Dienst zu
Wählen Sie im Menü Datei die Option Hinzufügen aus, und klicken Sie anschließend auf Neues Projekt.
Erweitern Sie im Dialogfeld Neues Projekt den Knoten Visual Basic oder Visual C#, wählen Sie Windows und dann Windows Forms-Anwendung aus. Klicken Sie auf OK, um das Projekt zu öffnen.
Klicken Sie mit der rechten Maustaste auf WindowsApplication1 und dann auf Dienstverweis hinzufügen. Das Dialogfeld Dienstverweis hinzufügen wird angezeigt.
Klicken Sie im Dialogfeld Dienstverweis hinzufügen auf Ermitteln.
Service1 wird im Bereich Services angezeigt.
Klicken Sie auf OK, um den Dienstverweis hinzuzufügen.
So erstellen Sie eine Clientanwendung
Doppelklicken Sie im Projektmappen-Explorer auf Form1.vb oder Form1.cs, um den Windows Forms-Designer zu öffnen, wenn er nicht bereits geöffnet ist.
Ziehen Sie aus dem Werkzeugkasten ein
TextBox
-Steuerelement, einLabel
-Steuerelement und einButton
-Steuerelement auf das Formular.Doppelklicken Sie auf
Button
, und fügen Sie demClick
-Ereignishandler den folgenden Code hinzu:private void button1_Click(System.Object sender, System.EventArgs e) { ServiceReference1.Service1Client client = new ServiceReference1.Service1Client(); string returnString; returnString = client.GetData(textBox1.Text); label1.Text = returnString; }
Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click Dim client As New ServiceReference1.Service1Client Dim returnString As String returnString = client.GetData(TextBox1.Text) Label1.Text = returnString End Sub
Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf WindowsApplication1, und wählen Sie Als Startprojekt festlegen aus.
Drücken Sie F5, um das Projekt auszuführen. Geben Sie Text ein, und klicken Sie auf die Schaltfläche. Zeigt die Bezeichnung "Ihre Eingabe:" und den von Ihnen eingegebenen Text an.