2017-03-22 3 views
14

मैं शब्दकोश का उपयोग कर रहा हूँ। के बाद .insert() "_t" और "_v" हैं। यहां दो पदों के बारे में serializationJSON first then BSON में कनवर्ट किया गया। मैं MongoDB के ड्राइवर v2.4.3,MongoDB में डालने पर _t और _v को कैसे रोकें?

mCollection.InsertOne(x); 
IMongoCollection<myDoc> mCollection = Db.GetCollection<myDoc>("whatever"); 

उपयोग कर रहा हूँ अगर मैं JSON-BSON, यह शिकायत के बारे में myDoc को BsonDocument परिवर्तित नहीं कर सकते है। IMongoCollection<BsonDocument> mCollection = Db.GetCollection<BsonDocument>("whatever"); पर स्विचिंग अभी भी _t और _v प्राप्त करें।

_t और _v से कैसे बचें?

public class myObjForDictionary 
    { 
     //... 
    } 
    public class myDoc 
    { 
     // ... some other elements, then Dictionary 
     public Dictionary<string, object> myDictionary { get; set; } 
    } 

    // to instantiate the 
    class myClass 
    { 
     // define MongoDB connection, etc. 
     // instantiate myDoc and populate data 
     var x = new myDoc 
     { 
      //... 
      myDictionary = new Dictionary<string, object> 
      { 
       { "type", "something" }, 
       { "Vendor", new object[0] }, 
       { "obj1", //data for myObjForDictionary 
       } 
      }; 
     } 

    } 
+0

वही समस्या यहां ... – Catalin

+0

@MatthewJamesDavis आपको वास्तव में क्या चाहिए? यह समस्या तब होती है क्योंकि हम ऑब्जेक्ट के JSON को बीएसओएन के रूप में ऑब्जेक्ट को बीएसओएन के रूप में सहेजने का प्रयास करते हैं –

उत्तर

0

मुझे लगता है कि आप DictionarySerializationOption लिए देख रहे हैं ... जो आप बॉक्स से बाहर विभिन्न विकल्पों की एक जोड़ी देता है:

enter image description here

यहाँ डेटा प्रकार और उपयोग के अपने कोड है यह निर्धारित करने के लिए कि आपका शब्दकोश कैसे क्रमबद्ध हो जाता है।

संबंधित मुद्दे