共享主机上的WCF配置问题

时间:2011-03-03 16:50:10

标签: asp.net wcf web-services shared-hosting rackspace-cloud

我有一个在本地,服务器和Azure上运行良好的WCF服务。但是,我正在尝试将相同的代码部署到RackSpace站点(共享主机环境正在运行.NET 4.0。IIS7和Windows Server 2008),并且在服务返回响应时运行以下错误:

  

消息:[System.ServiceModel.ProtocolException]   = {“响应消息的内容类型text / html与   绑定的内容类型(text / xml;   字符集= UTF-8)。如果使用自定义   编码器,请确保   IsContentTypeSupported方法是   实施得当。第一个1024   res的字节...

     

InnerException:_innerException = {“The   远程服务器返回错误:(500)   内部服务器错误。“}

问题是,虽然响应是错误的,但该方法确实成功接收数据并将其传递到数据库中,因此问题似乎在从WCF方法返回到客户端应用程序的响应中。有没有人遇到过这个?我知道共享主机上的信任级别可能是罪魁祸首 - 但我所尝试过的任何东西似乎都没有减轻我得到的错误。

以下是我在使用WCF服务的Web应用程序上的配置:

绑定:

<binding name="BasicHttpBinding_IAccountService" closeTimeout="00:10:00"
      openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00"
      allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
      maxBufferSize="2147483647" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647"
      messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
      useDefaultWebProxy="true">
      <readerQuotas maxDepth="64" maxStringContentLength="2147483647" maxArrayLength="2147483647"
        maxBytesPerRead="4096" maxNameTableCharCount="16384" />

      <security mode="None">
        <transport clientCredentialType="None" proxyCredentialType="None"
          realm="" />
        <message clientCredentialType="UserName" algorithmSuite="Default" />
      </security>

    </binding>

终点:

<client>
  <endpoint address="http://sitename.com/Services/AccountService.svc"
    binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IAccountService"
    contract="AccountService.IAccountService" name="BasicHttpBinding_IAccountService" /></client>

这是使用“添加服务引用”

时生成的默认绑定/端点

托管WCF服务的应用程序不使用任何自定义配置,但这里是它的Web.Config的行为部分:

<behaviors>
  <serviceBehaviors>
    <behavior name="">
      <serviceMetadata httpGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="true" />
    </behavior>
  </serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true"  />

0 个答案:

没有答案