C# WCF服务调用-超时时仅部分参数?

C# WCF服务调用-超时时仅部分参数?,c#,.net,vb.net,web-services,wcf,C#,.net,Vb.net,Web Services,Wcf,我有一个WCF web服务,我遇到了一个奇怪的问题 我们的一个供应商正在调用我们的一个方法,并声称向我们发送了3个良好的参数。该方法做的第一件事是将所有传入参数的值记录到数据库中。当我查看记录的消息时,我只看到填充的参数中的两个。供应商声称这是因为方法在发送第三个参数之前超时。我的印象是,如果该方法超时,我们将看到一个异常,而不是web方法的完全执行,其中缺少一些参数 卖主说得对吗?我们是否正在超时,只是使用迄今为止所使用的参数来执行该方法 谢谢 WCF是基于消息的,这意味着创建和发送整个消息时

我有一个WCF web服务,我遇到了一个奇怪的问题

我们的一个供应商正在调用我们的一个方法,并声称向我们发送了3个良好的参数。该方法做的第一件事是将所有传入参数的值记录到数据库中。当我查看记录的消息时,我只看到填充的参数中的两个。供应商声称这是因为方法在发送第三个参数之前超时。我的印象是,如果该方法超时,我们将看到一个异常,而不是web方法的完全执行,其中缺少一些参数

卖主说得对吗?我们是否正在超时,只是使用迄今为止所使用的参数来执行该方法


谢谢

WCF是基于消息的,这意味着创建和发送整个消息时,您不会得到部分参数列表,换句话说,在调用服务方法之前,这些参数将完全物化。回答没有代码的问题很难完全理解,但如果供应商认为参数“超时”,他们显然不理解WCF是如何工作的

添加一些日志记录会更好,例如:

<system.diagnostics>
<trace autoflush="true" />
<sources>
  <source name="System.ServiceModel"
          switchValue="Critical, Error, Verbose, Warning, Information,  ActivityTracing"
          propagateActivity="true">
    <listeners>
      <add name="sdt"
          type="System.Diagnostics.XmlWriterTraceListener"
          initializeData= "SdrConfigExample.e2e" />
    </listeners>
  </source>
</sources>
</system.diagnostics>


将其添加到WCF服务端的web/config中,以查看任何错误以及WCF活动。但听起来你没有收到错误,听起来你没有通过参数。

使用网络监控工具(又名嗅探器)检查供应商发送的内容。你会有证据证明他给你的服务。超时可能会丢弃/损坏消息,但很难生成具有缺失值的可读消息。确保您没有使用流式传输。