ड्राइवर को _id फ़ील्ड खोजने में सक्षम होना चाहिए। आप एक C# वर्ग बना सकते हैं जिसमें केवल दो गुण हों:Id और Values।
public class HashTableDocument
{
public ObjectId Id { get; set; }
[BsonExtraElements]
public Dictionary<string, object> Values { get; set; }
}
ध्यान दें कि हमें हैशटेबल के बजाय डिक्शनरी<स्ट्रिंग, ऑब्जेक्ट> का उपयोग करना होगा।
फिर आप दस्तावेज़ सम्मिलित करने के लिए निम्न जैसे कोड का उपयोग कर सकते हैं:
var document = new HashTableDocument
{
Id = ObjectId.GenerateNewId(),
Values = new Dictionary<string, object>
{
{ "metadata1", "asaad" },
{ "metadata2", new object[0] },
{ "metadata3", DateTime.UtcNow }
}
};
collection.Insert(document);
हम MongoDB शेल का उपयोग यह पुष्टि करने के लिए कर सकते हैं कि सम्मिलित दस्तावेज़ में वांछित रूप है:
> db.test.find().pretty()
{
"_id" : ObjectId("518abdd4e447ad1f78f74fb1"),
"metadata1" : "asaad",
"metadata2" : [ ],
"metadata3" : ISODate("2013-05-08T21:04:20.895Z")
}
>