MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Как да принудя mongo да съхранява членовете с малки букви?

За да използвате IMemeberMapConvention, трябва да се уверите, че сте декларирали своите конвенции, преди да започне процесът на картографиране. Или по желание отстранете съществуващите съпоставяния и създайте нови.

Например, следният е правилният ред за прилагане на конвенция:

        // first: create the conventions
        var myConventions = new ConventionPack();
        myConventions.Add(new FooConvention());

        ConventionRegistry.Register(
           "My Custom Conventions",
           myConventions,
           t => true);

        // only then apply the mapping
        BsonClassMap.RegisterClassMap<Foo>(cm =>
        {
            cm.AutoMap();
        });

        // finally save 
        collection.RemoveAll();
        collection.InsertBatch(new Foo[]
                               {
                                   new Foo() {Text = "Hello world!"},
                                   new Foo() {Text = "Hello world!"},
                                   new Foo() {Text = "Hello world!"},
                               });

Ето как е дефинирана тази примерна конвенция:

public class FooConvention : IMemberMapConvention

    private string _name = "FooConvention";

    #region Implementation of IConvention

    public string Name
    {
        get { return _name; }
        private set { _name = value; }
    }

    public void Apply(BsonMemberMap memberMap)
    {
        if (memberMap.MemberName == "Text")
        {
            memberMap.SetElementName("NotText");
        }
    }

    #endregion
}

Това са резултатите, които излязоха, когато пуснах тази извадка. Можете да видите, че свойството Text в крайна сметка е запазено като „NotText“:



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cassandra срещу MongoDB:кое да изберете

  2. Не може да се инсталира правилно mongodb на ubuntu 18.04 LTS

  3. Как да използвате променливи с MongoDB $lookup

  4. MongoDB налични връзки

  5. NodeJS сървърът виси на заявка за търсене на MongoDB при едновременни заявки