Проблемы с запросом вложенных списков в RavenDB - PullRequest
2 голосов
/ 10 февраля 2011

Я хочу использовать 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.

Мне нужна помощь, чтобы выяснить, как извлечь список клиентов, для которых для одного или нескольких заказов с CustomerBilled установлено значение false.

Как бы ясоздать запрос, чтобы сделать это?Я не могу заставить его работать, и понятия не имею, как.

1 Ответ

4 голосов
/ 10 февраля 2011

динамические запросы в RavenDB могут справиться с этим, я думаю, что следующее должно делать то, что вы хотите (извините, я не могу сейчас скомпилировать код для проверки)

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

Изменить: по новой ссылке прокрутите полпути вниз до раздела «Дополнительные параметры фильтрации»

...