wcftestclient - 我可以连接到特定的端点吗?

问题描述:

这应该是一个直截了当的问题。wcftestclient - 我可以连接到特定的端点吗?

我无法使用WCFTestClient工具连接到特定的终端。我有一个服务配置。像这样:

<service name="CO.Services.SvcTest"> 
     <endpoint address="ep1" binding="basicHttpBinding" bindingConfiguration="" 
      bindingNamespace="http://api.CO.com/Services/Tester/ep1" 
      contract="CO.Services.ISvcTest" /> 
     <endpoint address="ep2" binding="basicHttpBinding" bindingConfiguration="" 
      bindingNamespace="http://api.CO.com/Services/Tester/ep2" 
      contract="CO.Services.ISvcTest_v2" /> 
     <endpoint address="mex" binding="mexHttpBinding" bindingConfiguration="" 
      name="" contract="IMetadataExchange" /> 
     </service> 

如果我通过 '的http://本地主机:2659/Tester.svc/EP1' 或 '的http://本地主机:2659/Tester.svc/EP2' 我得到“无法从...获取元数据”,但是如果我通过'http:// localhost:2659/Tester.svc它可以工作并向我显示两个端点。

有谁知道我错过了什么?

EDIT1:这可能吗?

那就是正确的行为

在WCF中,默认情况下服务的元数据将在服务的基地址处提供。

如果您在自定义流程中托管服务,则可以使用baseAddresses configuration section自定义基址的URL,甚至可以添加新的服务。如果您在IIS中托管服务,这似乎是您的情况,那么基地址始终是.svc文件的URL。

编辑: 如果你想两个完全独立的终端,那么你将不得不创建两个服务实现,每一个合同,并在你的配置文件中的不同元素进行配置。只要端点是同一服务的一部分,您将只能从服务的基地址中检索元数据,在您的情况下,它是.svc文件的URL。

+0

好的,也许我把这个问题弄错了......那我该怎么做呢? :) – Learner 2012-01-12 11:51:39

+0

@克里斯蒂你到底想要达到什么目的? – 2012-01-12 11:58:55

+0

我想使用2个不同的端点来进行版本控制。所以我想知道如何使用WCFTestTool一次只加载一个端点。 – Learner 2012-01-12 12:03:12