Vereenvoudigde configuratie voor WCF-services
Het voorbeeld ConfigSimplificationIn40 laat zien hoe u een typische service en client implementeert en configureert met behulp van WCF (Windows Communication Foundation). Dit voorbeeld is de basis voor alle andere basistechnologievoorbeelden.
Deze service, die een eindpunt beschikbaar maakt voor communicatie met de service, maakt gebruik van de vereenvoudigde configuratie in .NET Framework 4. Vóór .NET Framework 4 wordt het eindpunt doorgaans gedefinieerd in een configuratiebestand (Web.config), zoals wordt weergegeven in de volgende voorbeeldconfiguratiecode.
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright ©) Microsoft Corporation. All Rights Reserved. -->
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="CalculatorServiceBehavior">
<serviceMetadata httpGetEnabled="True"/>
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service name="Microsoft.Samples.GettingStarted.CalculatorService"
behaviorConfiguration="CalculatorServiceBehavior">
<endpoint address="" binding="basicHttpBinding" contract="ICalculator"/>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
</service>
</services>
</system.serviceModel>
</configuration>
In .NET Framework 4 is het <service>
element optioneel. Wanneer een service geen eindpunten definieert, wordt er een eindpunt toegevoegd voor elk basisadres en elk geïmplementeerd contract aan de service. Het basisadres wordt toegevoegd aan de contractnaam om het eindpunt te bepalen en de binding wordt bepaald door het adresschema. In het volgende codevoorbeeld ziet u een vereenvoudigd configuratiebestand. Zoals geconfigureerd, kan de service worden geopend http://localhost/servicemodelsamples/service.svc
door een client op dezelfde computer. Voor clients op externe computers om toegang te krijgen tot de service, moet een volledig gekwalificeerde domeinnaam worden opgegeven in plaats van localhost. De service geeft standaard geen metagegevens weer. Als zodanig wordt het ServiceMetadataBehavior gedrag door de service ingeschakeld.
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright © Microsoft Corporation. All Rights Reserved. -->
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="">
<serviceMetadata httpGetEnabled="True"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
Dit voorbeeld gebruiken
Zorg ervoor dat u de eenmalige installatieprocedure voor de Windows Communication Foundation-voorbeelden hebt uitgevoerd.
Volg de instructies in Het bouwen van de Windows Communication Foundation-voorbeelden om de oplossing te bouwen.
Voer het voorbeeld uit door de volgende stappen uit te voeren:
Klik met de rechtermuisknop op het serviceproject en selecteer Instellen als opstartproject en druk vervolgens op Ctrl+F5.
Wacht totdat de console-uitvoer controleert of de service actief is.
Klik met de rechtermuisknop op het clientproject en selecteer Instellen als opstartproject en druk vervolgens op Ctrl+F5.