RavenDb自定义ID分配

时间:2011-10-03 20:02:19

标签: ravendb

我要求RavenDb数据库中文档的唯一性。所以我按照文档中的推荐 -

http://ravendb.net/faq/unique-constraints

我还使用以下代码来获取实体数量

public int GetCount<T>()
    {
        RavenQueryStatistics stats;
        _session.Query<T>().Customize(x=> x.WaitForNonStaleResultsAsOfLastWrite()).Statistics(out stats).Take(0).ToArray();
        return(stats.TotalResults);
        //IQueryable<T> queryable = from p in _session.Query<T>().Customize(x => x.WaitForNonStaleResultsAsOfLastWrite())
        //                          select p;
        //return queryable.Count();
    }

当我使用自己的ID(如Docs / Doc_1)时,TotalResults的方式高于数据库中的实际文档。当我在工作室中浏览文档时,文档低于TotalResults,但集合显示的数字与TotalResults相对应。

查看RavenQueryStatistics类中的其他字段我发现SkippedResults正确的计数答案总是TotalResults - SkipperResults。我在文档中找到了以下链接来解释SkipperResults,但在我的场景中它并没有澄清。

http://ravendb.net/faq/skipped-results

我想我错过了一些基本的ravendb概念。有没有类似的经历?

1 个答案:

答案 0 :(得分:0)

这听起来很奇怪,不应该真的发生。 你能尝试为此创建一个失败的测试并将其发送到邮件列表吗?