Получите доступ к MongoDB Rest Service, чтобы получить документ внутри документа - PullRequest
1 голос
/ 01 июня 2011

с активированным mongodb и rest, я хотел бы запросить документ внутри другого документа, каков синтаксис?В моем примере у меня есть коллекция Person, которая содержит документ Order для каждого человека.

Например, у меня есть эта схема

public Person{
    public int Id {get;set;}
    public IList<Order> Order {get;set;}
}

public Order{
    public int Id {get;set;}
    public string OrderName {get;set;}
}

Если я хочу запросить человека с Id = 2, мне просто нужно ввести этот URL:

http://localhost:28017/MyDatabase/PersonCollection/?filter_Id=2

Но что, если я хочу запросить ордер с Id = 40?

http://localhost:28017/MyDatabase/PersonCollection/?filter_Order.Id=40

Но он не работает, он возвращает все заказы без моего фильтрапо идентификатору = 40.

Какое решение?

Спасибо, Джон

1 Ответ

1 голос
/ 01 июня 2011

Синтаксис такой же, как обычно, поэтому следующий запрос должен работать:

http://localhost:28017/MyDatabase/PersonCollection/?filter_Order.Id=40

Но ваш документ должен выглядеть так:

{
  "_id": 1,
  "Order": [
    {
      "Id": 40,
      "OrderName": "name"
    }
  ]
}
...