2012-03-22 79 views
6

我看到在RavenDB中使用LINQ查询的冲突结果,我很好奇.Count()是如何工作的。RavenDB - LINQ - Count()差异

查询1:

Session.Query<thisEntity> 
.Count() 

结果:205 - 这意味着我有thisEntity的205个文件。

查询2:

Session.Query<thisEntity> 
.Take(210) 
.Dump() 

结果:LINQ垫这个查询显示的只是197个文件转储。我期待看到205个文件

查询3:

Session.Query<thisEntity> 
.Distinct() 
.Count() 

结果:197 - 可能意味着有197个独特的文件,并将它们的 其余8重复。这是另一回事,在我们的RavenDB实例中不可能创建重复项。

我的问题:如何获得这些8个可能存在的重复项的转储,以便我可以清楚地检查它们是什么。现在,伯爵给了我205,转储给我只有197。我想查询数据库的那些额外的8重复。

+1

我这件事更多的是与内部RavenDB在您使用/不使用页面大小发出查询时做不同的事情。这可能是一个错误,你能发布一个完整的代码示例来显示问题吗? – 2012-03-22 12:04:12

回答

1

这些文档是否完全一样,或者是某些缺少属性的旧版本的对象?如果是这样,您可能遇到相同的问题described here

+0

这些文件完全一样。结构没有改变。 – user1258393 2012-03-22 13:51:22