MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Fügen Sie das Wörterbuch mit dem c#-Treiber in MongoDB ein

Der Treiber muss in der Lage sein, das _id-Feld zu finden. Sie könnten eine C#-Klasse erstellen, die nur zwei Eigenschaften hat:Id und Values.

public class HashTableDocument
{
    public ObjectId Id { get; set; }
    [BsonExtraElements]
    public Dictionary<string, object> Values { get; set; }

}

Beachten Sie, dass wir Dictionary anstelle von Hashtable.

verwenden müssen

Sie könnten dann Code wie den folgenden verwenden, um ein Dokument einzufügen:

var document = new HashTableDocument
{
    Id = ObjectId.GenerateNewId(),
    Values = new Dictionary<string, object>
    {
        { "metadata1", "asaad" },
        { "metadata2", new object[0] },
        { "metadata3", DateTime.UtcNow }
    }
};
collection.Insert(document);

Wir können die MongoDB-Shell verwenden, um zu bestätigen, dass das eingefügte Dokument die gewünschte Form hat:

> db.test.find().pretty()
{
        "_id" : ObjectId("518abdd4e447ad1f78f74fb1"),
        "metadata1" : "asaad",
        "metadata2" : [ ],
        "metadata3" : ISODate("2013-05-08T21:04:20.895Z")
}
>