Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Im wsHttp-Beispiel wird veranschaulicht, wie sie einen typischen Dienst und einen typischen Client mithilfe von Windows Communication Foundation (WCF) implementieren. Dieses Beispiel besteht aus einem Clientkonsolenprogramm (client.exe) und einer Dienstbibliothek, die von Internetinformationsdienste (INTERNET Information Services, IIS) gehostet wird. Der Dienst implementiert einen Vertrag, der ein Kommunikationsmuster für die Anforderungsantwort definiert. Der Vertrag wird durch die ICalculator
Schnittstelle definiert, die mathematische Operationen verfügbar macht (addieren, subtrahieren, multiplizieren und dividieren). Der Client sendet synchrone Anforderungen an einen bestimmten mathematischen Vorgang und der Dienst antwortet mit dem Ergebnis. Clientaktivitäten sind im Konsolenfenster sichtbar.
Hinweis
Die Einrichtungsverfahren und Build-Anweisungen für dieses Beispiel befinden sich am Ende dieses Themas.
In diesem Beispiel wird der ICalculator
Vertrag mithilfe von <wsHttpBinding verfügbar gemacht>. Die Konfiguration dieser Bindung wurde in der datei Web.config erweitert.
<bindings>
<wsHttpBinding>
<!--The following is the expanded configuration section for a-->
<!--WSHttpBinding. Each property is configured with the default-->
<!--value. See the ReliableSession, TransactionFlow, -->
<!--TransportSecurity, and MessageSecurity samples in the WS -->
<!--directory to learn how to configure these features. -->
<binding name="Binding1"
bypassProxyOnLocal="false"
transactionFlow="false"
hostNameComparisonMode="StrongWildcard"
maxBufferPoolSize="524288"
maxReceivedMessageSize="65536"
messageEncoding="Text"
textEncoding="utf-8"
useDefaultWebProxy="true"
allowCookies="false">
<reliableSession ordered="true"
inactivityTimeout="00:10:00"
enabled="false" />
<security mode="Message">
<message clientCredentialType="Windows"
negotiateServiceCredential="true"
algorithmSuite="Default"
establishSecurityContext="true" />
</security>
</binding>
</wsHttpBinding>
</bindings>
Im Basiselement binding
können Sie mit dem maxReceivedMessageSize
Wert die maximale Größe einer eingehenden Nachricht (in Byte) konfigurieren. Der hostNameComparisonMode
Wert ermöglicht es Ihnen zu konfigurieren, ob der Hostname beim Demultiplexing von Nachrichten an den Service berücksichtigt wird. Mit dem messageEncoding
Wert können Sie konfigurieren, ob die Text- oder MTOM-Codierung für Nachrichten verwendet werden soll. Mit textEncoding
dem Wert können Sie die Zeichencodierung für Nachrichten konfigurieren. Mit dem bypassProxyOnLocal
Wert können Sie konfigurieren, ob ein HTTP-Proxy für die lokale Kommunikation verwendet werden soll. Der transactionFlow
Wert konfiguriert, ob die aktuelle Transaktion fließt (wenn ein Vorgang für den Transaktionsfluss konfiguriert ist).
<Im reliableSession-Element> konfiguriert der aktivierte boolesche Wert, ob zuverlässige Sitzungen aktiviert sind. Der ordered
Wert konfiguriert, ob die Reihenfolge der Nachrichten beibehalten wird. Der inactivityTimeout
Wert konfiguriert, wie lange eine Sitzung im Leerlauf sein kann, bevor ein Fehler auftritt.
In der <Sicherheit> konfiguriert der mode
Wert, welcher Sicherheitsmodus verwendet werden soll. In diesem Beispiel wird die Nachrichtensicherheit verwendet, weshalb die <Nachricht> innerhalb der <Sicherheit> angegeben wird.
Wenn Sie das Beispiel ausführen, werden die Vorgangsanforderungen und -antworten im Clientkonsolenfenster angezeigt. Drücken Sie im Clientfenster die EINGABETASTE, um den Client zu schließen.
Add(100,15.99) = 115.99
Subtract(145,76.54) = 68.46
Multiply(9,81.25) = 731.25
Divide(22,7) = 3.14285714285714
Press <ENTER> to terminate client.
So können Sie das Beispiel einrichten, erstellen und ausführen
Installieren Sie ASP.NET 4.0 mit dem folgenden Befehl.
%windir%\Microsoft.NET\Framework\v4.0.XXXXX\aspnet_regiis.exe /i /enable
Stellen Sie sicher, dass Sie das One-Time Setup-Verfahren für die Windows Communication Foundation-Beispieleausgeführt haben.
Um die C#- oder Visual Basic .NET-Edition der Lösung zu erstellen, befolgen Sie die Anweisungen in Building the Windows Communication Foundation Samples.
Wenn Sie das Beispiel in einer Konfiguration mit einem Computer oder über Computer hinweg ausführen möchten, folgen Sie den Anweisungen unter Durchführen der Windows Communication Foundation-Beispiele.