我想将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的客户列表。
如何创建查询来执行此操作?我似乎无法让一个工作,我不知道如何。
答案 0 :(得分:4)
RavenDB中的dynamic queries可以处理这个问题,我认为以下应该做你想做的事(抱歉我现在无法编译代码来验证)
// List of objects - linq
from doc in Customers
where doc.Orders.Any( order => order.CustomeBilled == false)
select doc;
编辑:在新链接上,向下滚动到“更多过滤选项”部分