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
Silverlight 在大型对象中找不到WCF错误_Silverlight_Wcf_Client - Fatal编程技术网

Silverlight 在大型对象中找不到WCF错误

Silverlight 在大型对象中找不到WCF错误,silverlight,wcf,client,Silverlight,Wcf,Client,我在WCF服务呼叫中遇到问题。该服务接受一个复杂的对象,其中包含许多对象列表。当对象变得太大时,就会出现问题。我收到一个通信异常,该异常表示找不到。只要项目不太大,调用就会起作用。任何帮助都将不胜感激。以下是客户端配置文件的相关部分: <bindings> <basicHttpBinding> <binding name="BasicHttpBinding_ICartService" maxBufferSize="2147483647"

我在WCF服务呼叫中遇到问题。该服务接受一个复杂的对象,其中包含许多对象列表。当对象变得太大时,就会出现问题。我收到一个通信异常,该异常表示找不到。只要项目不太大,调用就会起作用。任何帮助都将不胜感激。以下是客户端配置文件的相关部分:

<bindings>
    <basicHttpBinding>
        <binding name="BasicHttpBinding_ICartService" maxBufferSize="2147483647"
                 maxReceivedMessageSize="2147483647">
            <security mode="None" />
        </binding>
    </basicHttpBinding>
</bindings>
<client>
    <endpoint address="../Services/CartService.svc"
              binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_ICartService"
              contract="AccessPoint.RichClient.Wcf.ICartService"
              name="BasicHttpBinding_ICartService" />
</client>
web.config文件包含以下内容:

<bindings>
    <basicHttpBinding>
        <binding name="basicHttpLargeMessage" closeTimeout="00:02:00"
                 openTimeout="00:02:00" receiveTimeout="00:10:00" sendTimeout="00:02:00"
                 maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647">
            <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"
                maxArrayLength="2147483647" maxBytesPerRead="2147483647"
                maxNameTableCharCount="2147483647" />
        </binding>
    </basicHttpBinding>
</bindings>

<services>
    <service behaviorConfiguration="CartService.CartServiceBehavior"
             name="AccessPoint.WcfServices.CartService">
        <endpoint address="" behaviorConfiguration="CartServiceBehavior"
                  binding="basicHttpBinding" bindingConfiguration="basicHttpLargeMessage"
                  contract="AccessPoint.WcfServices.ICartService" />
</service>

<behaviors>
    <serviceBehaviors>
        <behavior name="CartService.CartServiceBehavior">
            <serviceMetadata httpGetEnabled="true" />
            <serviceDebug includeExceptionDetailInFaults="true" />
            <dataContractSerializer maxItemsInObjectGraph ="2147483647"/>
        </behavior>
    </serviceBehaviors>
    <endpointBehaviors>
        <behavior name="CartServiceBehavior">
            <dataContractSerializer maxItemsInObjectGraph="2147483647" />
        </behavior>
    </endpointBehaviors>
</behaviors>

任何服务器错误都将作为未找到的异常反映在Silverlight中。您需要使用一些网络嗅探工具(如Fiddler)查看响应是否包含有关错误的其他信息,或者在服务器端查看它返回不成功响应的原因


在的帖子中有一段视频,其中有很多关于在Silverlight中调试WCF服务的信息。

您能添加确切的异常和stacktrace吗?大的有多大?MB的?国标?TB?这是外部异常的堆栈跟踪:在System.ServiceModel.AsyncResult.End[TAsyncResult]IAsyncResult结果在System.ServiceModel.Channel.ServiceChannel.SendAsyncResult.EndSendAsyncResult结果在System.ServiceModel.Channel.ServiceChannel.EndCallString操作中,对象[]输出,System.ServiceModel.ClientBase1.ChannelBase1.EndInvokeString methodName处的IAsyncResult结果,对象[]args,AccessPoint.WcfServices.CartWcfS.CartWcfSClient.CartWcfSClientChannel.EndSaveCartIAsyncResult结果处的IAsyncResult结果和内部异常的堆栈跟踪:在System.Net.Browser.AsyncHelper.BeginNouisEndorPostCallback beginMethod处,System.Net.Browser.BrowserHttpWebRequest.EndGetResponseAsyncResult异步结果System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelAsyncRequest.CompleteTResponseAsyncResult的对象状态。我不确定消息的大小。这是一个复杂的物体,但我猜它不到1MB,我猜出来了。我有两个名称相似的服务——一个已被弃用。我使用了错误的配置名称。新服务尚未添加到web.config文件中。Fiddler中未显示任何内容,因此我猜测故障发生在发送任何内容之前。请尝试在服务器上启用跟踪,然后查看是否有其他信息。