2012-03-22 32 views
6

Tôi thấy kết quả xung đột bằng cách sử dụng LINQ truy vấn trong RavenDB, tôi tò mò như thế nào .Count() hoạt động chính xác.RavenDB - LINQ - Count() sự khác biệt

Query 1:

Session.Query<thisEntity> 
.Count() 

Kết quả: 205 - có nghĩa là tôi có 205 văn bản của thisEntity.

Query 2:

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

Kết quả: Trong LINQ truy vấn pad điều này cho thấy các bãi chứa chỉ 197 tài liệu. Tôi đã chờ đợi để xem 205 tài liệu

Query 3:

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

Kết quả: 197 - Có thể có nghĩa là có 197 tài liệu độc đáo và còn lại 8 trong số họ được bản sao. Đây là một điều khác, không có cách nào có thể tạo ra các bản sao trong cá thể RavenDB của chúng ta.

Câu hỏi của tôi: Làm thế nào tôi có thể nhận được một bãi chứa của 8 bản sao được cho là hiện có để tôi có thể kiểm tra rõ ràng chúng là gì. Ngay bây giờ, Count cho tôi 205, dump cho tôi chỉ 197. Tôi muốn truy vấn db cho 8 bản sao thêm đó.

+1

Tôi điều này là nhiều hơn để làm với thực tế là nội bộ RavenDB làm những việc khác nhau khi bạn phát hành một truy vấn có/không có kích thước trang. Nó có thể là một lỗi, bạn có thể gửi một mẫu mã đầy đủ cho thấy vấn đề không? –

Trả lời

1

Tài liệu có giống hệt hoặc một số phiên bản cũ của đối tượng có thuộc tính bị thiếu không? Nếu có, bạn có thể gặp phải sự cố tương tự described here.

+0

Các tài liệu chính xác giống nhau. Cấu trúc không thay đổi. – user1258393

Các vấn đề liên quan