Exemplarische Vorgehensweise: Erstellen von und Zugreifen auf WCF-Dienste

In dieser exemplarischen Vorgehensweise wird dargestellt, wie ein einfacher Windows Communication Foundation (WCF)-Dienst erstellt und getestet wird und wie er dann von einer Windows Forms-Anwendung verwendet werden kann.

HinweisHinweis

Ihr Computer zeigt möglicherweise für einige der Elemente der Visual Studio-Benutzeroberfläche in der folgenden Anleitung andere Namen oder Standorte an. Diese Elemente sind von der jeweiligen Visual Studio-Version und den verwendeten Einstellungen abhängig. Weitere Informationen finden Sie unter Visual Studio-Einstellungen.

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#, klicken Sie auf WCF und dann auf WCF-Dienstbibliothek.Klicken Sie auf OK, um das Projekt zu öffnen.

    HinweisHinweis

    Dadurch wird ein funktionierender Dienst erstellt, der getestet und auf den zugegriffen werden kann.Die folgenden beiden Schritte veranschaulichen, wie die Standardmethode für die Verwendung eines anderen Datentyps geändert werden kann.In einer realen Anwendung würden Sie dem Dienst auch eigene Funktionen hinzufügen.

  3. Doppelklicken Sie im Projektmappen-Explorer auf IService1.vb oder IService1.cs, und suchen Sie die folgende Zeile:

    <OperationContract()>
    Function GetData(ByVal value As Integer) As String
    
    [OperationContract]
    string GetData(int value);
    

    Ändern Sie den Typ des value-Parameters in String.

    <OperationContract()>
    Function GetData(ByVal value As String) As String
    
    [OperationContract]
    string GetData(string value);
    

    Beachten Sie im obigen Code das <OperationContract()>-Attribut oder das [OperationContract]-Attribut.Diese Attribute sind für jede vom Dienst verfügbar gemachte Methode erforderlich.

  4. Doppelklicken Sie im Projektmappen-Explorer auf Service1.vb oder Service1.cs, und suchen Sie die folgende Zeile:

    Public Function GetData(ByVal value As Integer) As String Implements IService1.GetData
        Return String.Format("You entered: {0}", value)
    End Function
    
    public string GetData(int value)
    {
        return string.Format("You entered: {0}", value);
    }
    

    Ändern Sie den Typ des Wertparameters in String:

    Public Function GetData(ByVal value As String) As String Implements IService1.GetData
        Return String.Format("You entered: {0}", value)
    End Function
    
    public string GetData(string value)
    {
        return string.Format("You entered: {0}", value);
    }
    

Testen des Diensts

So testen Sie einen WCF-Dienst

  1. Drücken Sie F5, um den Dienst auszuführen.Es wird ein WCF-Testclient-Formular angezeigt, das den Dienst lädt.

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

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

  4. Klicken Sie auf die Schaltfläche Aufrufen.Wenn ein Dialogfeld Sicherheitswarnung angezeigt wird, klicken Sie auf OK.Das Ergebnis wird im Feld Antwort angezeigt.

  5. Klicken Sie im Menü Datei auf Beenden, um das Testformular zu schließen.

Zugreifen auf den Dienst

So verweisen Sie auf einen WCF-Dienst

  1. Zeigen Sie im Menü Datei auf Hinzufügen, und klicken Sie 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.

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

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

    Service1 wird im Bereich Dienste 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 der Toolbox ein TextBox-Steuerelement, ein Label-Steuerelement und ein Button-Steuerelement auf das Formular.

  3. Doppelklicken Sie auf Button, und fügen Sie dem Click-Ereignishandler folgenden Code hinzu:

      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
    
    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;
    }
    
  4. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf WindowsApplication1, und klicken Sie dann auf Als Startprojekt festlegen.

  5. Drücken Sie F5, um das Projekt auszuführen.Geben Sie Text ein, und klicken Sie auf die Schaltfläche.Die Beschriftung lautet dann "Ihre Eingabe:" gefolgt von dem Text, den Sie eingegeben haben.

Siehe auch

Weitere Ressourcen

Consuming ASMX and WCF Services Sample