动态调用WCF 415错误

按照网上的例子,创建ServiceUitl类,结合配置文件,动态创建WCF Client。但在调试时,每当运行到Reference.EndGet***()方法时,弹出异常“Not Found”。但该WCF服务以引用的方式是可以用的。也添加了跨域文件。使用HttpWatch跟踪,发现每当请求*.svc时,总是返回415错误


 

查了很久才得到提示,原来是服务端发布的WCF服务的binding是cutomBinding(系统默认创建),而动态创建WCF Client的类的Binding是basicHttpBinding,二者不一致从而导致调用失败。

最终,通过修改服务器端的WCF配置文件,将Binding方式由customBinding改为basicHttpBinding,并删去多余的参数解决该问题

 

 <services>
      <service name="MonitorClient.Web.WcfService">
        <endpoint address="" binding="basicHttpBinding" bindingConfiguration=""
          contract="MonitorClient.Web.WcfService" />
      </service>
 </services>
 

 

 

 

 


posted @ 2011-11-21 17:27  HappyZeng  阅读(2430)  评论(0编辑  收藏  举报