【发布时间】:2018-06-16 15:38:10
【问题描述】:
根据article,在 Microsoft CRM 中管理分页 cookie 的方式存在严重错误。简而言之,当尝试以一对多关系检索超过 5000 条记录时,就会出现该错误。作者指出,由于父实体不包含唯一的 guid,因此分页 cookie 也不会是唯一的,这可能导致在检索下一页记录时会丢失大量记录。
有人遇到过这个错误吗?你是怎么解决的?
当然,一种方法是将查询转为使用子实体作为主要实体。这样,每条记录都将是独一无二的。但这也不是最佳解决方案,因为我必须在代码中手动将其改回。
我注意到的另一种方式是,当我像这样指定子实体的顺序时:linkedEntity.Orders.Add(OrderType.Ascending),那么分页 cookie 将始终为空。这消除了记录丢失的问题,但据我了解,这会导致 SQL 的大量开销。
如果有任何方法可以使分页 cookie 同时包含父记录和子记录,那么最好的方法当然是。但我还没有找到任何方法来做到这一点。有什么想法吗?
【问题讨论】:
标签: sql-server cookies dynamics-crm