MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

केस असंवेदनशील संपत्ति मैपिंग

ऐसा करने के लिए मुझे लगता है कि आपके पास 2 विकल्प होंगे।

सबसे पहले मैन्युअल रूप से एक क्लास मैप लिखना होगा

BsonClassMap.RegisterClassMap<MyClass>(cm => {
    cm.AutoMap();
    cm.GetMemberMap(c => c.Foo).SetElementName("foo");
});

दूसरा यह होगा कि आप अपनी कक्षा को निम्नलिखित विशेषताओं से सजाएं

public class MyObj
{
    [BsonElement("id")]
    public int Id { get; set; }
    
    [BsonElement("foo")]
    public string Foo { get; set; }
}

CSharp ड्राइवर टीम के पास निम्न लिंक पर क्रमांकन पर एक अच्छा ट्यूटोरियल है

http://docs.mongodb.org/ पारिस्थितिकी तंत्र/ट्यूटोरियल/क्रमबद्ध-दस्तावेज-के साथ-सीशार्प-चालक/

अपडेट करें

मैंने अभी निम्नलिखित की कोशिश की है और यह मेरे लिए काम करता है, जाहिर है मुझे यकीन है कि यह आपके कोड का एक और अधिक सरलीकृत संस्करण है लेकिन यह अनुमान लगा रहा है कि यह कैसा दिख सकता है।

मैंने दो वर्ग मानचित्रों को अलग-अलग पंजीकृत किया है और बेस क्लास में BsonKnownType जोड़ा है।

[BsonKnownTypes(typeof(GeoJSONObject))]
public class Point
{
    public string Coordinates { get; set; }
}

public class GeoJSONObject : Point
{
    public string Type { get; set; }
}

static void Main(string[] args)
{
    var cn = new MongoConnectionStringBuilder("server=localhost;database=MyTestDB;");
    var settings = MongoClientSettings.FromConnectionStringBuilder(cn);
    var client = new MongoClient(settings);

    BsonClassMap.RegisterClassMap<Point>(cm =>
    {
        cm.AutoMap();
        cm.GetMemberMap(c => c.Coordinates).SetElementName("coordinates");                   
    });

    BsonClassMap.RegisterClassMap<GeoJSONObject>(cm =>
    {
        cm.AutoMap();
        cm.GetMemberMap(c => c.Type).SetElementName("type");
    });

    var result = client.GetServer()
              .GetDatabase("MyTestDB")
              .GetCollection("MyCol")
              .Find(Query.EQ("type", BsonValue.Create("xxxx")));
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. मोंगोडब में अद्वितीय वस्तु आईडी कैसे उत्पन्न करें

  2. MongoDB शार्प संग्रह पुनर्संतुलन नहीं कर रहा है

  3. संग्रह में सभी वस्तुओं का पता लगाएं Java Mongodb

  4. MongoDB और Robomongo:कनेक्ट नहीं हो सकता (प्रमाणीकरण)

  5. नेस्टेड वस्तु पर मोंगो अनुक्रमण