访问MongoDB Rest Service以获取文档中的文档

时间:2011-06-01 10:05:49

标签: c# rest mongodb mongodb-.net-driver

用mongodb和rest激活,我想查询另一个文档里面的文件,语法是什么?在我的例子中,我有一个Person集合,其中包含每个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的人,我只需要输入以下网址:

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

但是如果我想查询Id = 40的订单?

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

但它不起作用,它返回所有没有我的过滤器的订单,ID = 40。

解决方案是什么?

由于 约翰

1 个答案:

答案 0 :(得分:1)

与通常语法相同,因此以下请求应该有效:

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

但是你的文件应该是这样的:

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