【问题标题】:Implementing "$or" with C# driver (Samus) for MongoDB使用 MongoDB 的 C# 驱动程序 (Samus) 实现“$or”
【发布时间】:2010-11-27 03:17:53
【问题描述】:

请给我一些 C# 查询示例 使用“$ or”逻辑。 我正在使用 C# 驱动程序, Samus 写的 (https://github.com/samus/mongodb-csharp)...

【问题讨论】:

    标签: c# mongodb driver


    【解决方案1】:

    如果你有一个类型化的集合(本例中的 Person 类型),你可以使用 Linq 进行 OR:

    var mongo = new Mongo("Server=localhost:27017");
    mongo.Connect();
    
    List<Person> people = mongo["dbName"].GetCollection<Person>("people").Linq().Where(x => x.Age == 21 || x.Age == 35).ToList();
    
    mongo.Disconnect();
    

    目前不会使用“$or”运算符(它将使用 JavaScript 表示 ||,请参阅 JavaScript 模式 in this wiki page)。

    如果您真的想使用“$or”运算符,您可以构建一个查询文档并将一组条件传递给“$or”运算符:

    var mongo = new Mongo("Server=localhost:27017");
    mongo.Connect();
    
    var query = new Document
    {
        {"$or", new Document[] { new Document("Age", 21), new Document("Age", 35) } }
    };
    Document people = mongo["dbName"].GetCollection("people").Find(query);
    
    mongo.Disconnect();
    

    【讨论】:

    • 您好,您今天能否使用官方的 C# 驱动器演示如何执行此操作? (不使用 Linq)
    猜你喜欢
    • 1970-01-01
    • 2023-03-02
    • 2016-09-20
    • 2017-05-04
    • 1970-01-01
    • 2016-03-13
    • 2018-08-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多