2009-07-08 19 views
0

我有一个服务有一个端点,我已经在app.config文件中定义了这个端点。 我想知道如何在程序中使用app.config来创建端点。 请给我一个想法。如何从WCF中的app.config文件创建端点?

+0

你是什么意思创建端点?你是指托管一个端点,还是编程配置和端点? – 2009-07-08 07:16:44

+0

我的意思是从app.config中读取端点信息,并从这个信息中创建端点。 或换句话说,假设我有一个app.config文件,那么我将如何创建或了解端点? – 2009-07-08 07:22:43

回答

1

您是否为您的服务生成了代理?如果是这样,请使用代理客户端!

MyServiceClient proxy = new MyServiceClient(); 

或者,您可以在名称传为配置中使用:

MyServiceClient proxy = new MyServiceClient("MyConfigName"); 

不需要做任何幻想。

如果您尚未创建代理(在Visual Studio中使用“添加服务引用”或在命令行上使用svcutil.exe),则需要添加对包含服务和数据协定的程序集的引用,然后使用

ChannelFactory<IMyService> factory = new ChannelFactory<IMyService>(); 
IMyService proxy = factory.CreateChannel(); 

再次,用于创建信道工厂,可以传递在配置部分的名称,如果有多个,来指定要使用哪一个。

此外,为了阐明 - 在任何给定时间,一个端点只能有客户端。该服务可能有多个 - 但客户端需要下定决心并连接到其中的一个 - 您无法在客户端中拥有多个端点(因为您的问题的标题似乎暗示)您不能在上有多个端点。

Marc

0

如果您使用的是Visual Studio,请使用WCF服务配置编辑器(位于工具下)。使用它来打开你的配置文件或托管服务,然后你可以在那里创建你的端点。任何新的端点配置信息将根据情况保存到您的app.config/web.config中