尝试使用wcf服务,但我认为我的web.config文件不正确

时间:2010-11-14 10:09:35

标签: c# wcf wcf-client

我正尝试尝试使用服务。我试图将它部署到服务器并使用它然而我得到这个错误。我创建了一个Web应用程序并添加了一个wcf服务。我得到了这个

  

服务器堆栈跟踪:      在System.ServiceModel.Channels.HttpChannelUtilities.ValidateRequestReplyResponse(HttpWebRequest请求,HttpWebResponse响应,HttpChannelFactory工厂,WebException responseException,ChannelBinding channelBinding)      at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)      在System.ServiceModel.Channels.RequestChannel.Request(消息消息,TimeSpan超时)      在System.ServiceModel.Dispatcher.RequestChannelBinder.Request(消息消息,TimeSpan超时)      在System.ServiceModel.Channels.ServiceChannel.Call(String action,Boolean oneway,ProxyOperationRuntime operation,Object [] ins,Object [] outs,TimeSpan timeout)      在System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall,ProxyOperationRuntime操作)      在System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

     

在[0]处重新抛出异常:      在System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg,IMessage retMsg)      在System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData,Int32 type)      在IBusinessV1.CheckForUpdate(String currentVersion)      在BusinessV1Client.CheckForUpdate(String currentVersion)

我的配置有问题吗?

<system.serviceModel>
   <services>
      <service name="SP.WebWCF.Business_v1">
          <endpoint 
             address="https://services.mydomain.com" 
             binding="basicHttpBinding"
             bindingConfiguration="" 
             contract="SP.WebWCF.IBusiness_v1"
             listenUri="/" isSystemEndpoint="true" />
      </service>
    </services>
    <behaviors>
       <serviceBehaviors>
           <behavior>
              <serviceMetadata httpGetEnabled="true"/>
              <serviceDebug includeExceptionDetailInFaults="false"/>
           </behavior>
       </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>

1 个答案:

答案 0 :(得分:1)

好的,所以你确实显示了服务器配置,但是你从未真正告诉我们错误是什么 - 你显示堆栈跟踪 - 但不是错误消息......

无论如何,看看你的服务配置,有一点似乎有点奇怪 - 你的服务地址:

address="https://services.mydomain.com" 
binding="basicHttpBinding"

通常这可能是

address="https://services.mydomain.com/MyServiceVirtualDir/MyService.svc" 

如果您在IIS中托管服务,或类似

address="https://services.mydomain.com/MyService" 

如果您在Windows NT服务中自托管等。

你能仔细检查一下你的地址吗?你100%确定这是正确的吗?

更新,您还在使用 https:// ,但是,您未在服务配置中显示任何安全设置。仅供测试:当您将配置中的服务地址更改为http://时,您可以调用您的服务吗?