使用GET在MongoDB中返回数据

时间:2015-10-22 20:23:53

标签: mongodb get asp.net-web-api

我正在尝试使用Web Api连接到MongoDB,尝试使用Get返回MongoDB中的连接数据。数据库的名称是" test"收集名称为" restaurant"。

这是我的代码

      public IEnumerable<restaurants> Get()
    {
        var client = new MongoClient();
        var dbs = client.GetDatabase("test");
        var collection = dbs.GetCollection<restaurants>("restaurants");


        return collection;
     }

最后一个收集词是带下划线的,我没有找到需要返回的内容(代替收集)以便在MongoDB中显示数据库(使用邮递员)。

1 个答案:

答案 0 :(得分:0)

我认为你试图返回IMongoCollection,而不是IEnumerable,所以最后一行加下划线:)

尝试将集合转换为List(异步),然后返回。例如:

public Task<List<restaurants>> GetRestaurantsAsync()
{
    var client = new MongoClient();
    var dbs = client.GetDatabase("test");
    var collection = dbs.GetCollection<restaurants>("restaurants");


    return await collection.Find(_ => true).ToListAsync();
 }


 public async Task MainAsync()
 {
    List<restaurants> restaurantsList = await GetRestaurantsAsync();
 }

注意:这取决于您使用的mongo c#驱动程序版本。