我可以使用 mongodb C# 驱动程序进行文本查询吗
有没有办法将 shell 查询语法表示的查询提交给 mongo c# 驱动程序
例如,
Coll.find { "myrecs","$query : { x : 3, y : "abc" }, $orderby : { x : 1 } } ");
从 shell 指南中获取示例
Is there a way to submit a query that is expressed in the shell query syntax to the mongo c# driver
For example Something like
Coll.find { "myrecs","$query : { x : 3, y : "abc" }, $orderby : { x : 1 } } ");
To take an example from the shell guide
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
没有您想要的完全相同的功能。
但是您可以从 json 创建 BsonDocument 进行查询:
然后您可以从 BsonDocument 创建查询:
您可以对排序表达式执行相同的操作:
您还可以为 MongoCollection 创建扩展方法,如下所示:
我没有测试上面的代码。如果需要的话稍后会做。
更新:
刚刚测试了上面的代码,它可以工作!
你可以这样使用它:
There is no exact same functionality you want.
But you can create BsonDocument from json for query:
And after that you can create query from BsonDocument:
The same you can do for the sort expression:
Also you can create extension method for the MongoCollection like this:
I didn't test the code above. Will do it later if need.
Update:
Just tested the code above, it's working!
You can use it like this:
QueryComplete 类似乎已被弃用。使用 MongoDB.Driver.QueryDocument 代替。如下:
The QueryComplete class seems to have been deprecated. Use
MongoDB.Driver.QueryDocument
instead. As below:这是我编写的一个 Web 服务函数,您可以发送过滤器查询、限制和跳过分页以及对您想要的任何集合的排序查询!它通用且快速。
假设我的集合中有这些名为“mytest2”的记录:
我可以使用以下参数进行 Web 服务调用,以返回从第一页开始的 100 条记录,其中值 >= 23 且值 <= 26,按降序
排列!
Here is a web service function I wrote which you can send in a filter query, limit, and skip for pagination and a sort query for any collection you want! It's generic and fast.
Assuming I had these records in my collection called "mytest2":
I could make the web service call with the following parameters to return 100 records starting with the first page where value >= 23 and value <= 26, in descending order
Enjoy!
以下是我用于从字符串和 .NET 对象转换为 BSON 查询的一些例程(这是业务对象包装器的一部分,因此对该类有一些引用):
使用这些例程,可以很容易地通过字符串或对象参数进行查询:
或使用对象语法:
我喜欢对象语法只是因为用 C# 代码编写比处理 JSON 字符串中嵌入的引号(如果它们是手工编码的)要容易一些。
Here are a few routines I use for converting from string and from .NET objects to BSON queries (this is part of business object wrapper so a couple of refs to that class):
Using these it's pretty easy to query via string or object parms:
or using object syntax:
I like the object syntax simply because it's a bit easier to write out in C# code than dealing with embedded quotes in JSON strings if they are handcoded.
使用 官方 C# 驱动程序,您可以执行以下操作
:来自 shell 的等效查询将是:
Using the official C# driver, you'd do something like this:
The equivalent query from the shell would be: