首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态客户关系管理引发CommunicationException

动态客户关系管理引发CommunicationException
EN

Stack Overflow用户
提问于 2012-08-02 05:26:18
回答 1查看 2K关注 0票数 2

我正在使用从它获得数据(超过5000条记录)。

我使用基于XML的查询来获取数据。

代码语言:javascript
复制
EntityCollection resultSet = _orgServiceProxy.RetrieveMultiple(new FetchExpression(query));

有时候它可以工作,大多数时候它会抛出异常,从日志中,我得到了这个长异常。

接收到对https://orgno.api.crm.dynamics.com/XRMServices/2011/Organization.svc的HTTP响应时发生了错误。这可能是因为服务端点绑定没有使用HTTP协议。这也可能是由于服务器中止HTTP请求上下文(可能是由于服务关闭)造成的。有关详细信息,请参阅服务器日志。-> System.ServiceModel.CommunicationException:在接收https://orgno.api.crm.dynamics.com/XRMServices/2011/Organization.svc的HTTP响应时发生了错误。这可能是因为服务端点绑定没有使用HTTP协议。这也可能是由于服务器中止HTTP请求上下文(可能是由于服务关闭)造成的。有关详细信息,请参阅服务器日志。-> System.Net.WebException:基础连接已关闭:在接收时发生意外错误。-> System.IO.IOException:无法从传输连接读取数据:现有连接被远程主机强制关闭。-> System.Net.Sockets.SocketException:远程主机在System.Net.Sockets.NetworkStream.Read(Byte[]缓冲器、Int32偏移量、Int32大小)-内部异常堆栈跟踪-在System.Net.FixedSizeReader.ReadPacket(Byte[]缓冲区、Int32偏移量、Int32计数)的System.Net.Sockets.NetworkStream.Read(Byte[]缓冲区、Int32偏移量、Int32大小)处强制关闭现有连接(Byte[]缓冲区、Int32偏移量、Int32计数)、Int32偏移量、Int32计数,System.Net.Security._SslStream.StartReading(Byte[]缓冲区的AsyncProtocolRequest asyncRequest,System.Net.Security._SslStream.ProcessRead(Byte[]缓冲区的Int32偏移量,Int32计数,AsyncProtocolRequest asyncRequest),System.Net.TlsStream.Read(Byte[]缓冲区,Int32偏移量,Int32大小)的Int32偏移量,Int32计数,AsyncProtocolRequest asyncRequest(System.Net.TlsStream.Read(Byte[]缓冲区,Int32偏移量,Int32大小),#en22 20#(请求,布尔,布尔值System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan probeRead) -内部异常堆栈跟踪的结束

我不知道为什么会这样?

EN

回答 1

Stack Overflow用户

发布于 2012-08-02 09:14:57

CRM服务根本不喜欢在一个请求中检索大量数据。

我建议您使用分页cookie来按集检索记录。它应该解决您的问题并提高代码的性能。

您可以在msdn 这里上找到一个很好的教程。

致以敬意,

凯文

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11771519

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档