我在本地创建并测试了一个WCF服务,当然它工作正常。我发布到共享主机站点并浏览到wsdl并且似乎没问题。但是,当我在WP7代码中调用该服务时,我收到一个错误,其中包含无用的错误消息。启用includeExceptionDetailInFaults和WCF跟踪后读取错误。 “System.ServiceModel.ProtocolException:Content Type application / soap + xml; charset = utf-8已发送到期望text / xml的服务; charset = utf-8。客户端和服务绑定可能不匹配。”
以下是web.config的一部分......
<behaviors>
<serviceBehaviors>
<behavior name="SL_SeeYaThere_WCF.Web.SeeYaThereWCFBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug httpHelpPageEnabled ="true" includeExceptionDetailInFaults="true" />
</behavior>
<!—- other services… -->
</serviceBehaviors>
</behaviors>
<bindings>
<basicHttpBinding>
<!—- there is not a binding for this service should there be? -->
<!—- other services… -->
</basicHttpBinding>
</bindings>
&LT;服务&GT;
&LT; service behaviorConfiguration =“SL_SeeYaThere_WCF.Web.SeeYaThereWCFBehavior”name =“SL_SeeYaThere_WCF.Web.SeeYaThereWCF”&gt;
&LT; endpoint address =“”binding =“basicHttpBinding”contract =“SL_SeeYaThere_WCF.Web.ISeeYaThereWCF”/&gt;
&LT; endpoint address =“mex”binding =“mexHttpBinding”contract =“IMetadataExchange”/&gt;
&LT; /服务&GT;
&LT; ! - 其他服务...... - &gt;
&LT; /服务&GT;
^^关于格式的适用性。编辑器无法正确显示标记。
这是我第一次使用WFC,这并不令人愉快。我做错了什么?
感谢您的帮助。
答案 0 :(得分:0)
好的发现了问题。在WP7应用程序中,有一个具有客户端绑定的ServicesReferences.clientConfig文件。 WCF服务有两个端点,一个用于Localhost,另一个用于共享托管地址。当我从本地主机配置服务引用到共享主机站点时,一定会发生这种情况。
我将本地主机加法器更改为共享托管地址,但它确实有效。