我正在尝试使用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中显示数据库(使用邮递员)。
答案 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#驱动程序版本。