Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Het voorbeeld wsReliableSession demonstreert het gebruik van betrouwbare sessies. Betrouwbare sessies bieden ondersteuning voor betrouwbare berichten en sessies. Betrouwbare berichtensystemen proberen communicatie opnieuw als er een fout optreedt en maken het mogelijk om bezorgingsgaranties op te geven, zoals het garanderen van de juiste volgorde van berichten. Sessies behouden de status voor clients tussen aanroepen. Het voorbeeld implementeert sessies voor het onderhouden van de clientstatus en geeft in-order leveringsgaranties op.
Dit voorbeeld is gebaseerd op de Aan de slag die een rekenmachineservice implementeert. De betrouwbare sessiefuncties worden ingeschakeld en geconfigureerd in de toepassingsconfiguratiebestanden voor de client en service.
In dit voorbeeld wordt de service gehost in IIS (Internet Information Services) en is de client een consoletoepassing (.exe).
Opmerking
De installatieprocedure en build-instructies voor dit voorbeeld bevinden zich aan het einde van dit onderwerp.
In het voorbeeld wordt de wsHttpBinding gebruikt. De binding wordt opgegeven in de configuratiebestanden voor zowel de client als de service. Het bindingstype wordt opgegeven in het kenmerk van binding het eindpuntelement, zoals wordt weergegeven in de volgende voorbeeldconfiguratie.
<endpoint address=""
binding="wsHttpBinding"
bindingConfiguration="Binding1"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
Het eindpunt bevat een bindingConfiguration kenmerk dat verwijst naar een bindingsconfiguratie met de naam Binding1. De bindingsconfiguratie maakt betrouwbare sessies mogelijk door het enabled kenmerk van de <reliableSession> in te stellen op true. Leveringsgaranties voor geordende sessies worden beheerd door het geordende kenmerk in te stellen op true of false. De standaardwaarde is true.
<bindings>
<wsHttpBinding>
<binding name="Binding1">
<reliableSession enabled="true" />
</binding>
</wsHttpBinding>
</bindings>
De service-implementatieklasse implementeert PerSession instancing om een afzonderlijk klasse-exemplaar voor elke client te onderhouden, zoals wordt weergegeven in de volgende voorbeeldcode.
[ServiceBehavior(InstanceContextMode=InstanceContextMode.PerSession)] public class CalculatorService : ICalculator
{
...
}
Wanneer u het voorbeeld uitvoert, worden de bewerkingsaanvragen en -antwoorden weergegeven in het clientconsolevenster. Druk op Enter in het clientvenster om de client af te sluiten.
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.
Het voorbeeld instellen, compileren en uitvoeren
Installeer ASP.NET 4.0 met de volgende opdracht.
%windir%\Microsoft.NET\Framework\v4.0.XXXXX\aspnet_regiis.exe /i /enableZorg ervoor dat u de One-Time Setup Procedure voor de Windows Communication Foundation-voorbeelden hebt uitgevoerd.
Als u de C# of Visual Basic .NET-editie van de oplossing wilt bouwen, volgt u de instructies in Het bouwen van de Windows Communication Foundation-voorbeelden.
Als u het voorbeeld wilt uitvoeren in een configuratie met één of meerdere computers, volgt u de instructies in Windows Communication Foundation-voorbeelden uitvoeren.