为什么我的查询不会从RavenDB返回任何结果?

时间:2013-07-04 13:57:39

标签: c# .net ravendb

我在localhost:8080上运行RavenDB服务器。我在那里创建了一个数据库“CountriesRegions”,其中包含“Country”和“Region”的文档,例如:

文件编号27:

{
  "Country": "Sweden",
  "Region": "EU"
}

我有一个CountryRegion课程:

public class CountryRegion
{
    public string Id { get; set; }
    public string Country { get; set; }
    public string Region { get; set; }

    public CountryRegion(){}
}

以下代码包含test对象,其中Country设置为“Sweden”,Region设置为“EU”,符合预期:

using (var session = _countriesDocumentStore.OpenSession())
{
    var test = session.Load<CountryRegion>("27");
}

但是,在此代码中test是一个空列表:

using (var session = _countriesDocumentStore.OpenSession())
{
    var test = session.Query<CountryRegion>()
    .Customize(cr => cr.WaitForNonStaleResults())
    .ToList();
}

怎么了?

1 个答案:

答案 0 :(得分:0)

您应该检查是否为目标数据库定义了索引“Raven / DocumentsByEntityName”,并且您的文档具有正确的元数据信息。

元数据应该有这样一行:

“Raven-Entity-Name”:“CountryRegion”

如果这没有帮助,请同时发布您正在使用的ravendb版本。小提琴曲也可能有用。