Nic*_*asR 25 .net c# mongodb mongodb-csharp-2.0 mongodb-.net-driver
我需要检索MongoDB中我的集合中的所有文档,但我无法弄清楚如何.我已经宣布我的'收藏'像这样 -
private static IMongoCollection<Project> SpeCollection = db.GetCollection<Project>("collection_Project");
Run Code Online (Sandbox Code Playgroud)
我遵循的是在解释这个 MongoDB的教程.我根据自己的需要调整了它,比如 -
var documents = await SpeCollection.Find(new Project()).ToListAsync();
Run Code Online (Sandbox Code Playgroud)
但是,我一直有以下错误 -
MongoDB.Driver.IMongoCollection没有'Find'的定义和扩展方法[superlong stuff]的最佳覆盖.查找包含无效的参数.
i3a*_*non 56
使用当前版本的驱动程序(v2.0),您可以通过传递匹配所有内容的过滤器来实现:
var documents = await SpeCollection.Find(_ => true).ToListAsync();
Run Code Online (Sandbox Code Playgroud)
他们还添加了一个空的filter(FilterDefinition.Empty),它将到达驱动程序的下一个版本(v2.1):
var documents = await SpeCollection.Find(Builders<Project>.Filter.Empty).ToListAsync();
Run Code Online (Sandbox Code Playgroud)
检索所有文件 -
var documents = SpeCollection.AsQueryable();
Run Code Online (Sandbox Code Playgroud)
也转换为JSON对象 -
var json = Json(documents, JsonRequestBehavior.AllowGet);
Run Code Online (Sandbox Code Playgroud)
如果需要所有文档,为什么不使用Find all?
var documents = await SpeCollection.Find(new BsonDocument()).ToListAsync();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
49441 次 |
| 最近记录: |