背景:我正在编写一个应用程序来检索和修改所有帐户记录的1个字段。为此,我首先检索所有帐户记录并将它们存储在EntityCollection中。然后我迭代该集合并进行更改。由于我有大约30000个帐户记录,因此我使用以下link中的解决方法来避免CRM的5000个记录限制。
但是,我想知道在1个EntityCollection对象中存储那么多记录是否可以?我可以在1个EntityCollection中存储的最大记录数是多少?
我正在使用CRM2011内部部署,SQL Server 2008R2和NetFramework 4.0。
答案 0 :(得分:1)
对于内存耗尽的进程外的EntityCollection
没有限制。
如果你想把它们全部拉下来,然后全部更新它们,你只需要下拉你需要的字段来帮助你运行和整个内存使用所花费的时间。当您返回更新CRM时,您可以使用ExecuteMultipleRequest
批量UpdateRequest
和you can only send 1000 at a time。
另一种方法是分批下拉和更新,这样你就不会同时拥有全部30k内存。