Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#WCF:WCF服务在发送项目数组时返回(404)错误请求_C#_Wcf_Wcf Binding - Fatal编程技术网

C#WCF:WCF服务在发送项目数组时返回(404)错误请求

C#WCF:WCF服务在发送项目数组时返回(404)错误请求,c#,wcf,wcf-binding,C#,Wcf,Wcf Binding,我试图向WCF服务方法发送大约50个元素的数组,但我总是收到一个(404)错误请求 我认为这与消息大小或类似的东西有关,因为如果我发送一个空数组,它就会工作 我做了一些研究,并在WCF的web.config中添加了一些内容,但我仍然无法使其正常工作 任何人都可以提供一些额外的信息,我可以如何增加我可以发送的信息的大小 [更新]解决方案: 这是一个明显的问题,但您是否尝试过将其设置为65536并查看是否仍然失败?您的服务主机应配置为接收大量数据,如果不接收,则在服务级别将其丢弃 添加对Syst

我试图向WCF服务方法发送大约50个元素的数组,但我总是收到一个
(404)错误请求

我认为这与消息大小或类似的东西有关,因为如果我发送一个空数组,它就会工作

我做了一些研究,并在WCF的web.config中添加了一些内容,但我仍然无法使其正常工作

任何人都可以提供一些额外的信息,我可以如何增加我可以发送的信息的大小


[更新]解决方案:


这是一个明显的问题,但您是否尝试过将其设置为65536并查看是否仍然失败?

您的服务主机应配置为接收大量数据,如果不接收,则在服务级别将其丢弃

  • 添加对System.Runtime.Serialization的引用
  • 创建绑定时,请设置消息大小:

    
    return new NetTcpBinding(SecurityMode.None, true)  
    {  
        MaxReceivedMessageSize = 99999999,  
        ReaderQuotas = { MaxArrayLength = 99999999 }  
    };
    
    • 愚蠢,愚蠢的我:(

      问题是我在web.config中创建了绑定配置,如下所示:

      <bindings>
          <wsHttpBinding>
              <binding name="netTcpBindingConfig" closeTimeout="00:10:00" openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00" transactionFlow="false" hostNameComparisonMode="StrongWildcard"  maxBufferPoolSize="524288" maxReceivedMessageSize="6000000">
                  <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="6000000" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
              </binding>
          </wsHttpBinding>
      </bindings>
      

      现在它像一个符咒一样工作。

      如果我发送数组的5个元素,我仍然会收到错误的请求错误。那么这不是数组的大小,请尝试关注数组的内容。但是,如果我发送3个元素,它就工作了;这就是为什么我要讨论大小的原因。嗯,也许它的大小确实相关
      bindingConfiguration="netTcpBindingConfig"