sql >> Database >  >> NoSQL >> MongoDB

Wat is de juiste manier om MongoDB-verbindingen in ASP.Net MVC te beheren?

In de officiële documentatie er staat dat MongoServer , MongoDatabase , en MongoCollection thread-safe zijn en dat u één enkele MongoServer . moet maken voor elke database waarmee u verbinding maakt.

Dus MongoServer , MongoDatabase , en MongoCollection kan veilig worden geconfigureerd als singletons. MongoServer zal zelfs helpen dit af te dwingen door dezelfde MongoDatabase . terug te sturen instantie voor opeenvolgende aanroepen, en MongoDatabase zal hetzelfde doen voor MongoCollection v.

D.w.z. uw MongoServer instantie kan veilig worden geconfigureerd om een ​​singleton-levensstijl in uw IoC-container te hebben, en u kunt net zo goed injectie instellen voor MongoDatabase en misschien zelfs MongoCollection ook.

Ik gebruik deze strategie zelf met Windsor - je kunt mijn MongoInstaller zien hier:https://gist.github.com/2427676 - hierdoor kunnen mijn lessen gewoon doorgaan en dit doen:

public class SomeClass
{
    public SomeClass(MongoCollection<Person> people)
    { ... }
}

om een ​​collectie te laten injecteren, mooi en klaar voor gebruik.



  1. Hoe een veld in mongodb te verhogen?

  2. Mongoose voegt meerdere items toe aan database

  3. MongoDB insertMany()

  4. Mongo Query om documenten op te halen op basis van dezelfde veldwaarde en die welke niet zijn verlopen