2011-04-06 59 views
0

虽然实现WCF客户端终结system.serviceModel下端点元素的问题,我的配置文件有以下端点项:WCF - 关于配置文件

<endpoint address="http://localhost/MyProject/Services/MyService.svc/MyService" 
     binding="basicHttpBinding" 
     contract="MyNamespace.IContract" /> 

此时该服务没有在IIS托管。基本上,我使用卡西尼来调用应用程序。这种配置工作正常。但是,如果我删除/ MYSERVICE元素,我的配置是这样的:

<endpoint address="http://localhost/MyProject/Services/MyService.svc" 
     binding="basicHttpBinding" 
     contract="MyNamespace.IContract" /> 

我得到以下异常:

System.ServiceModel.ProtocolException:内容类型text/xml的; charset = utf-8不支持服务。客户端和服务绑定可能不匹配

为什么第二个配置会在第一个配置中断时运行?关于url的/ MyService部分有什么特别之处?

谢谢!

回答

0

我怀疑这是您在服务端定义端点的方式的问题。试试这个:

<service 
    name="NameOfYourService"> 

    <host> 
     <baseAddresses> 
     <add baseAddress="http://localhost/MyProject/Services/"/> 
     </baseAddresses> 
    </host> 

    <endpoint 
     address="" 
     binding="basicHttpBinding" 
     contract="Namespace.Contract" /> 

    </service>