KonfigurationskanalfactoryConfiguration Channel Factory

In diesem Beispiel wird die Verwendung von ConfigurationChannelFactory<TChannel> behandelt.This sample covers the usage of the ConfigurationChannelFactory<TChannel>. Die ConfigurationChannelFactory<TChannel> ermöglicht die zentrale Verwaltung der WCF-Client-Konfiguration.The ConfigurationChannelFactory<TChannel> allows central management of WCF client configuration. Dies kann auch in Szenarien nützlich sein, in denen die Konfiguration nach der Ladezeit der Anwendungsdomäne ausgewählt oder geändert wird.This can also be useful in scenarios in which configuration is selected or changed after the application domain load time.

VeranschaulichtDemonstrates

ConfigurationChannelFactory<TChannel>

DiskussionDiscussion

In diesem Beispiel wird gezeigt, wie eine bestimmte Konfigurationsdatei mit ConfigurationChannelFactory<TChannel> zu einer Clientanwendung hinzugefügt wird, ohne die standardmäßige Anwendungskonfigurationsdatei verwenden zu müssen.This sample shows how to use ConfigurationChannelFactory<TChannel> to add a particular configuration file to a client application, without having to use the default application configuration file.

Das Beispiel umfasst zwei Projekte.The sample consists of two projects. Das erste Projekt ist ein einfacher Dienst, der auf Nachrichten von den Clients antwortet.The first project is a simple service that runs to reply to messages coming from the clients. Das zweite Projekt ist eine Clientanwendung, die für die Konfigurationsdatei Test.config mithilfe einer ConfigurationChannelFactory<TChannel> zwei ExeConfigurationFileMap-Objekte erstellt und diese für die Kommunikation mit dem Dienst verwendet.The second project is a client application that builds two ConfigurationChannelFactory<TChannel> objects using a ExeConfigurationFileMap for the Test.config configuration file and uses them to communicate with the service. Beide Clients verwenden die in Test.config angegebene Konfiguration für die Kommunikation mit dem Dienst.Both clients communicate with the service using the configuration specified in Test.config.

Der folgende Code fügt einer Clientanwendung eine benutzerdefinierte Konfigurationsdatei hinzu.The following code adds a custom configuration file to a client application.

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();  

So können Sie das Beispiel einrichten, erstellen und ausführenTo set up, build, and run the sample

  1. Öffnen Sie Visual Studio 2012Visual Studio 2012 mit Administratorrechten.Open Visual Studio 2012Visual Studio 2012 with administrator privileges.

  2. Mit der rechten Maustaste in der Projektmappe configurationchannelfactory (2 Projekte), und wählen Sie dann Eigenschaften.Right-click the ConfigurationChannelFactory solution (2 projects) and then select Properties.

  3. In allgemeine EigenschaftenOption Startprojekt, und klicken Sie dann auf mehrere Startprojekte.In Common Properties, select Startup Project, and then click Multiple startup projects.

  4. Verschieben der Service Projekt am Anfang der Liste mit den Aktion "Start", und verschieben Sie dann die Client nach dem Projekt die Dienst-Projekt auch mit der Aktion "Start", sodass die Client Projekt ausgeführt, nachdem die Service Projekt.Move the Service project to the beginning of the list, with the Action ‘Start’, and then move the Client project after the Service project, also with the Action ‘Start’, so the Client project is executed after the Service project.

  5. Klicken Sie auf OK, und drücken Sie dann F5 (oder STRG + F5), um das Beispiel auszuführen.Click OK, and then press F5 (or CTRL+F5) to run the sample.

Wichtig

Die Beispiele sind möglicherweise bereits auf dem Computer installiert.The samples may already be installed on your machine. Suchen Sie nach dem folgenden Verzeichnis (Standardverzeichnis), bevor Sie fortfahren.Check for the following (default) directory before continuing.

<InstallDrive>:\WF_WCF_Samples

Wenn dieses Verzeichnis nicht vorhanden ist, fahren Sie mit Windows Communication Foundation (WCF) und Windows Workflow Foundation (WF) Samples for .NET Framework 4 aller Windows Communication Foundation (WCF) herunterladen und WFWF Beispiele.If this directory does not exist, go to Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4 to download all Windows Communication Foundation (WCF) and WFWF samples. Dieses Beispiel befindet sich im folgenden Verzeichnis.This sample is located in the following directory.

<InstallDrive>:\WF_WCF_Samples\WCF\Basic\Services\ConfigurationChannelFactory