Freigeben über


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

  1. Zeigen Sie im Menü Datei auf Neu, und klicken Sie dann auf Projekt.

  2. 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.

    Das WCF-Dienstbibliotheksprojekt

    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.

  3. Die Datei "IService1"

    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 in String:

            [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.

  4. Die Datei "Service1"

    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

  1. Drücken Sie F5, um die Anwendung auszuführen. Ein WCF-Testclient-Formular wird angezeigt und lädt den Dienst.

  2. Doppelklicken Sie im WCF-Testclient-Formular auf die GetData()-Methode unter IService1. Die Registerkarte GetData wird angezeigt.

    Die GetData()-Methode

  3. Wählen Sie im Feld Anforderung das Feld Wert aus, und geben Sie Hello ein.

    Das Wertfeld

  4. 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.

    Das Ergebnis im Feld "Antwort"

  5. 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

  1. Wählen Sie im Menü Datei die Option Hinzufügen aus, und klicken Sie anschließend auf Neues Projekt.

  2. 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.

    Windows Forms-Anwendungsprojekt

  3. Klicken Sie mit der rechten Maustaste auf WindowsApplication1 und dann auf Dienstverweis hinzufügen. Das Dialogfeld Dienstverweis hinzufügen wird angezeigt.

  4. Klicken Sie im Dialogfeld Dienstverweis hinzufügen auf Ermitteln.

    Das Dialogfeld "Dienstverweis hinzufügen"

    Service1 wird im Bereich Services angezeigt.

  5. Klicken Sie auf OK, um den Dienstverweis hinzuzufügen.

So erstellen Sie eine Clientanwendung

  1. 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.

  2. Ziehen Sie aus dem Werkzeugkasten ein TextBox-Steuerelement, ein Label-Steuerelement und ein Button-Steuerelement auf das Formular.

    Hinzufügen von Steuerelementen zum Formular

  3. Doppelklicken Sie auf Button, und fügen Sie dem Click-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
    
  4. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf WindowsApplication1, und wählen Sie Als Startprojekt festlegen aus.

  5. 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.

    Das Formular mit dem Ergebnis

Siehe auch

Beispiel zur Verwendung von ASMX- und WCF-Diensten