MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

C# kueri mongo dengan string json

Ini jelek, tetapi Anda dapat melakukan ini dengan membatalkan serialisasi string ke BsonDocument dan kemudian membungkus QueryDocument

BsonDocument query = MongoDB.Bson.Serialization.BsonSerializer.Deserialize<BsonDocument>("{ SendId: 4, 'Events.Code' : { $all : [2], $nin : [3] } }");
QueryDocument queryDoc = new QueryDocument(query);
var result = collection.FindAs<TypeOfResultExpected>(queryDoc); // or just use Find

Jika itu adalah sesuatu yang Anda rencanakan untuk sering dilakukan, Anda selalu dapat membungkusnya dalam sebuah metode, atau membuat JSQueryDocument kelas seperti berikut:

public class JSQueryDocument : QueryDocument
{
    public JSQueryDocument(string query) : base(MongoDB.Bson.Serialization.BsonSerializer.Deserialize<BsonDocument>(query))
    {
        // Probably better to do this as a method rather than constructor as it
        // could be hard to debug queries that are not formatted correctly
    }
}

/// ...

var result = collection.Find(new JSQueryDocument("{ SendId: 4, 'Events.Code' : { $all : [2], $nin : [3] } }"));


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. nama bidang ClassName sedang dimasukkan ke dalam mongodb oleh morphia

  2. Setel konverter MongoDb secara terprogram

  3. Dapatkan posisi dokumen yang dipilih dalam koleksi [mongoDB]

  4. mongodb:masukkan jika tidak ada

  5. Mongo mengonversi semua bidang numerik yang disimpan sebagai string