问题在RavenDB中查询嵌套列表

时间:2011-02-09 22:00:41

标签: c# ravendb

我想将RavenDB用于我正在做的项目,但在我可以之前,我需要搞清楚如何查询嵌套对象...让我解释一下 我有一个这样的课:

public class Customer
{
 public string Id { get; set; }
 public string Name { get; set; }
 public IList<Orders> { get; set; }
}

然后是Order类:

public class Order
{
 public int OrderNumber { get; set; }
 public decimal OrderAmount { get; set; }
 public bool CustomerBilled { get; set; }
}

我创建了大量虚假数据并将其添加到Raven - 一些客户的订单只有CustomerBilled设置为true,一些CustomerBilled设置为false,一些在CustomerBilled上混合了true和false。

我需要帮助的是,弄清楚如何提取一个或多个CustomerBilled订单设置为false的客户列表。

如何创建查询来执行此操作?我似乎无法让一个工作,我不知道如何。

1 个答案:

答案 0 :(得分:4)

RavenDB中的dynamic queries可以处理这个问题,我认为以下应该做你想做的事(抱歉我现在无法编译代码来验证)

// List of objects - linq
from doc in Customers
where doc.Orders.Any( order => order.CustomeBilled == false)
select doc;

编辑:在新链接上,向下滚动到“更多过滤选项”部分