Delen via


Configuration Channel Factory

In het voorbeeld ConfigurationChannelFactory wordt het gebruik van de ConfigurationChannelFactory<TChannel>. Hiermee ConfigurationChannelFactory<TChannel> staat u centraal beheer van de WCF-clientconfiguratie toe. Dit kan ook handig zijn in scenario's waarin de configuratie is geselecteerd of gewijzigd na de laadtijd van het toepassingsdomein.

Demonstreert

ConfigurationChannelFactory<TChannel>

Discussie

In dit voorbeeld ziet u hoe ConfigurationChannelFactory<TChannel> u een bepaald configuratiebestand toevoegt aan een clienttoepassing, zonder dat u het standaardtoepassingsconfiguratiebestand hoeft te gebruiken.

Het voorbeeld bestaat uit twee projecten. Het eerste project is een eenvoudige service die wordt uitgevoerd om berichten te beantwoorden die afkomstig zijn van de clients. Het tweede project is een clienttoepassing die twee ConfigurationChannelFactory<TChannel> objecten bouwt met behulp van een ExeConfigurationFileMap voor het test.config-configuratiebestand en deze gebruikt om met de service te communiceren. Beide clients communiceren met de service met behulp van de configuratie die is opgegeven in Test.config.

Met de volgende code wordt een aangepast configuratiebestand toegevoegd aan een clienttoepassing.

ExeConfigurationFileMap fileMap = new ExeConfigurationFileMap();
fileMap.ExeConfigFilename = "Test.config";
Configuration newConfiguration = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);

ConfigurationChannelFactory<ICalculatorChannel> factory1 = new ConfigurationChannelFactory<ICalculatorChannel>("endpoint1", newConfiguration, new EndpointAddress("http://localhost:8000/servicemodelsamples/service"));
ICalculatorChannel client1 = factory1.CreateChannel();

Het voorbeeld instellen, compileren en uitvoeren

  1. Open Visual Studio met beheerdersbevoegdheden.

  2. Klik met de rechtermuisknop op de ConfigurationChannelFactory-oplossing (2 projecten) en selecteer Vervolgens Eigenschappen.

  3. In Algemene eigenschappen selecteert u Opstartproject en klikt u vervolgens op Meerdere opstartprojecten.

  4. Verplaats het serviceproject naar het begin van de lijst, met de actie Start en verplaats vervolgens het clientproject na het serviceproject , ook met de actie 'Starten', zodat het clientproject na het serviceproject wordt uitgevoerd.

  5. Klik op OK en druk vervolgens op F5 (of Ctrl+F5) om het voorbeeld uit te voeren.