Freigeben über


Erstellen eines ASP.NET-Web Forms-Clients

Ein ASP.NET-Web Form, das als XML-Webdienstclient eingesetzt wird, unterscheidet sich von anderen XML-Webdienstclients in zwei Punkten, und war in der Weise, wie auf die Proxyklasse verwiesen wird und wie sie weitergegeben wird. Insbesondere öffentliche Klassen in Assemblies, die an das Verzeichnis \Bin der Webanwendung weitergegeben werden, in der das Web Form enthalten ist, können aus einem ASP.NET-Web Form erstellt werden. Wenn Sie eine Proxyklasse für einen XML-Webdienstclient erstellen, diese in eine Assembly kompilieren und im Verzeichnis \Bin ablegen, kann das ASP.NET-Web Form daher eine Instanz der Proxyklasse erstellen.

So erstellen Sie einen Web Form-Client für einen XML-Webdienst

  1. Erstellen Sie einen Proxy für den XML-Webdienst.

    Wsdl https://www.contoso.com/Counter.asmx?WSDL
    [Visual Basic]
    Wsdl /language:VB https://www.contoso.com/Counter.asmx?WSDL
    

    Weitere Informationen finden Sie unter Erstellen eines XML-Webdienstproxys.

  2. Kompilieren Sie den XML-Webdienstproxy in eine Assembly, einschließlich der Assemblies System.XML.dll und System.Web.Services.dll und des unter Schritt 1 erstellten Proxys.

    csc /out:Counter.dll /t:library /r:System.XML.dll /r:System.Web.Services.dll Counter.cs
    [Visual Basic]
    vbc /out:Counter.dll /t:library /r:System.XML.dll,System.Web.Services.dll Counter.vb
    
  3. Erstellen Sie ein Web Form.

    Weitere Informationen zum Erstellen eines Web Forms finden Sie unter Web Forms-Seiten.

  4. Erstellen Sie innerhalb des Web Forms im Clientcode eine Instanz der Proxyklasse.

    Counter myCounter = new Counter();
    [Visual Basic]
    Dim myCounter As New Counter()
    
  5. Rufen Sie die Methode der Proxyklasse auf, die mit der XML-Webdienstmethode kommuniziert.

    UsageCount = myCounter.ServiceUsage();
    [Visual Basic]
    UsageCount = myCounter.ServiceUsage()
    
  6. Geben Sie das Web Form weiter. Speichern Sie die Assembly des XML-Webdienstproxys im Verzeichnis \Bin der Webanwendung, an die das Web Form weitergegeben wird.

    Weitere Informationen über das Weitergeben des Web Forms erhalten Sie unter Weitergabe von .NET Framework-Anwendungen.

    Im folgenden Beispiel wird ein Web Form-Client für den vorherigen XML-Webdienst veranschaulicht.

    <%@ Page Language="C#" %>
    <asp:Label id="Label1" runat="server" />
    <script runat=server language=c#>
    
     void Page_Load(Object o, EventArgs e){
    
      int UsageCount;
      // Create an instance of the XML Web service class.
      Counter myCounter = new Counter();
      // Call the XML Web service method ServiceUsage.
      UsageCount = myCounter.ServiceUsage();
    
      Label1.BackColor = System.Drawing.Color.DarkSlateBlue;
      Label1.ForeColor = System.Drawing.Color.Gold;
      Label1.BorderStyle = System.Web.UI.WebControls.BorderStyle.Inset;
    
      // Display the results in a Label Web Form server control.
      if (UsageCount == 1)
           Label1.Text ="XML Web service has been utilized >" + UsageCount.ToString() + "< time.";
      else   
           Label1.Text= "XML Web service has been utilized >" + UsageCount.ToString() + "< times.";
    }
    </script>
    [Visual Basic]
    <%@ Page Language="VB" %>
    <asp:Label id="Label1" runat="server" />
    <script runat=server language="VB">
    
    Sub Page_Load(o As Object, e As EventArgs)
        Dim UsageCount As Integer
        ' Create an instance of the XML Web service class.
        Dim myCounter As New Counter()
        ' Call the XML Web service method ServiceUsage.
        UsageCount = myCounter.ServiceUsage()
    
        Label1.BackColor = System.Drawing.Color.DarkSlateBlue
        Label1.ForeColor = System.Drawing.Color.Gold
        Label1.BorderStyle = System.Web.UI.WebControls.BorderStyle.Inset
    
        ' Display the results in a Label Web Form server control.
        If UsageCount = 1 Then
            Label1.Text = "XML Web service has been utilized >" & UsageCount.ToString() & "< time."
        Else
            Label1.Text = "XML Web service has been utilized >" & UsageCount.ToString() & "< times."
        End If
    End Sub
    </script>
    

Siehe auch

Erstellen von XML-Webdienstclients | Erstellen von Clients für XML-Webdienste