Freigeben über


Vorgehensweise: Erstellen eines ASP.NET Web Form-Clients

Dieses Thema bezieht sich auf eine veraltete Technologie. XML-Webdienste und XML-Webdienstclients sollten nun mithilfe der folgenden Technologie erstellt werden: Windows Communication Foundation.

Code Example

Ein ASP.NET Web Form, das als Webdienstclient fungiert, unterscheidet sich von anderen Webdienstclients in der Art und Weise, in der auf eine Proxyklasse verwiesen wird und in der sie bereitgestellt wird. Insbesondere ist es möglich, von einem ASP.NET Web Form aus öffentliche Klassen zu erstellen, die in Assemblys im Unterverzeichnis \Bin der Webanwendung, die das Web Form enthält, bereitgestellt werden. Wenn Sie eine Proxyklasse für einen 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 Webdienst

  1. Erstellen Sie eine Proxyklasse für den Webdienst.

    Wsdl https://www.contoso.com/Counter.asmx?WSDL
    
    Wsdl /language:VB https://www.contoso.com/Counter.asmx?WSDL
    

    Weitere Informationen finden Sie unter Erstellen eines XML-Webdienstproxys.

Kompilieren Sie die Webdienst-Proxyklasse in eine Assembly, in die Sie die Assemblys System.Xml.dll und System.Web.Services.dll und die in Schritt 1 erstellte Proxyklasse einbinden.

csc /out:Counter.dll /t:library /r:System.XML.dll /r:System.Web.Services.dll Counter.cs
vbc /out:Counter.dll /t:library /r:System.XML.dll,System.Web.Services.dll Counter.vb
  1. Erstellen Sie ein Web Form.

    Weitere Informationen zum Erstellen eines Web Forms finden Sie unter ASP.NET Web Forms Pages.

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

    Counter myCounter = new Counter();
    
    Dim myCounter As New Counter()
    
  3. Rufen Sie die Methode der Proxyklasse auf, die mit der Webdienstmethode kommuniziert.

    UsageCount = myCounter.ServiceUsage();
    
    UsageCount = myCounter.ServiceUsage()
    
  4. Stellen Sie das Web Form bereit. Stellen Sie die Webdienst-Proxyassembly im Verzeichnis "\Bin" unter der Webanwendung bereit, in der das Web Form bereitgestellt wird.

    Weitere Informationen zum Bereitstellen des Web Forms finden Sie unter Deploying .NET Framework Applications.

Beispiel

 <%@ 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 Web service class.
  Counter myCounter = new Counter();
  // Call the 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 ="Web service has been utilized >" + UsageCount.ToString() + "< time.";
  else   
       Label1.Text= "Web service has been utilized >" + UsageCount.ToString() + "< times.";
}
</script>
<%@ 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 Web service class.
    Dim myCounter As New Counter()
    ' Call the 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 = "Web service has been utilized >" & UsageCount.ToString() & "< time."
    Else
        Label1.Text = "Web service has been utilized >" & UsageCount.ToString() & "< times."
    End If
End Sub
</script>

Siehe auch

Konzepte

Erstellen von XML-Webdienstclients

Weitere Ressourcen

Erstellen von Clients für XML-Webdienste