我有一个有一个端点的服务,我在app.config文件中定义了这个端点。 我想知道如果在程序中有app.config,我该如何创建端点。 请给我一个主意。
答案 0 :(得分:1)
您是否为自己的服务生成了代理?如果是这样,只需使用代理客户端!
MyServiceClient proxy = new MyServiceClient();
或者,您可以传入要使用的配置的名称:
MyServiceClient proxy = new MyServiceClient("MyConfigName");
无需做任何花哨的事。
如果您尚未创建代理(在Visual Studio中使用“添加服务引用”或在命令行中使用svcutil.exe),则需要添加对包含服务和数据协定的程序集的引用,以及然后使用
ChannelFactory<IMyService> factory = new ChannelFactory<IMyService>();
IMyService proxy = factory.CreateChannel( );
同样,为了创建频道工厂,您可以传入配置部分的名称(如果有多个),以指定要使用的名称。
此外,澄清一下 - 客户端在任何给定时间都只能拥有一个端点。该服务可能有多个 - 但客户需要下定决心并连接到其中一个 - 您不能在客户端中有多个端点(因为您的问题的标题似乎暗示)。
马克
答案 1 :(得分:0)
如果您使用的是Visual Studio,请使用WCF服务配置编辑器(位于工具下)。使用此选项打开配置文件或托管服务,然后您可以在那里创建端点。任何新的端点配置信息都将根据需要保存到app.config / web.config中