【问题标题】:WCF with Multiple Endpoints accessing WSDL?具有多个端点访问 WSDL 的 WCF?
【发布时间】:2009-05-19 20:17:42
【问题描述】:

WSDl 是否只能通过“.svc?wsdl”访问?我有一个具有多个端点的服务。例如(在 web.config 中):

<services>
  <service behaviorConfiguration="MyServiceTypeBehavior" name="WcfService1.Service">
    <endpoint binding="wsHttpBinding" bindingConfiguration="ws1"
     name="ws1" contract="WcfService1.IMyService" />
    <endpoint address="http://www.blah.com/Service.svc/Basic" binding="basicHttpBinding"
     bindingConfiguration="Basic" name="Basic" contract="WcfService1.IMyService" />
    <endpoint address="http://localhost:5606/Service.svc/Secured"
     binding="wsHttpBinding" bindingConfiguration="WsSecured" name="WsSecured"
     contract="WcfService1.IMyService" />
  </service>
</services>

如果我转到:http://www.blah.com/Service.svc/Basic,我会收到 404 页面错误。当我转到http://www.blah.com/Service.svc?wsdl 时,我在页面底部看到了我的 wsdl 和我的 3 个端点。我应该能够通过他们的地址到达其他端点吗?我有一个使用 Axis2 访问我们的服务的客户端,我想为不同的客户端使用多个端点。我知道我可以将此添加到服务行为中:

<behavior name="MyServiceTypeBehavior">
  <serviceMetadata httpGetEnabled="true" httpGetUrl="Basic" />
  <serviceDebug includeExceptionDetailInFaults="true" />
  <dataContractSerializer maxItemsInObjectGraph="2147483646"/>
</behavior>

但是我必须为每个端点创建一个服务条目,对吗?我是否应该担心能够通过 URL 访问端点?

谢谢

丹尼尔

【问题讨论】:

    标签: wcf .net-3.5


    【解决方案1】:

    我想你可能想多了。 WSDL 将指定所有端点及其策略。客户端可以指定使用哪个端点进行通信。

    您无需导航到端点的 URL。

    【讨论】:

    • 你是对的!我想多了。我很感激答案!丹尼尔
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多