配置通道工厂
ConfigurationChannelFactory 示例介绍了 ConfigurationChannelFactory<TChannel> 的用法。 通过 ConfigurationChannelFactory<TChannel>,可以集中管理 WCF 客户端配置。 这可能在应用程序域加载时间之后选择或更改配置的方案中也非常有用。
演示
ConfigurationChannelFactory<TChannel>
讨论 (Discussion)
此示例演示如何使用 ConfigurationChannelFactory<TChannel> 将特定配置文件添加到客户端应用程序,而不必使用默认的应用程序文件。
此示例由两个项目组成。 第一个项目是一个简单服务,运行该服务可答复来自客户端的消息。 第二个项目是一个客户端应用程序,它使用 ConfigurationChannelFactory<TChannel> 为 Test.config 配置文件生成两个 ExeConfigurationFileMap 对象,然后使用这两个对象与服务通信。 两个客户端都使用 Test.config 中指定的配置与服务通信。
以下代码可将自定义配置文件添加到客户端应用程序。
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();
设置、生成和运行示例
以管理员权限打开 Visual Studio。
右键单击 ConfigurationChannelFactory 解决方案(2 个项目),然后选择“属性”。
在“通用属性”中,选择“启动项目”,然后单击“多启动项目”。
使用“Action 'Start'”将“服务”项目移到列表的开头,然后再使用“Action 'Start'”将“客户端”项目移到“服务”项目的后面,因此,“客户端”项目将在“服务”项目之后执行。
单击“确定”,然后按 F5(或 Ctrl+F5)运行示例。