W the official documentation jest powiedziane, że MongoServer
, MongoDatabase
i MongoCollection
są bezpieczne dla wątków, i że powinniśmy stworzyć pojedynczą MongoServer
dla każdej bazy danych, które łączą się.
Tak więc MongoServer
, MongoDatabase
i MongoCollection
można bezpiecznie skonfigurować jako pojedyncze. MongoServer
pomoże nawet wymusić to, zwracając tę samą instancję MongoDatabase
dla kolejnych wywołań, a MongoDatabase
zrobi to samo dla MongoCollection
s.
tj. Twoja instancja MongoServer
może być bezpiecznie skonfigurowana tak, aby miała jednorodny styl życia w twoim pojemniku IoC, możesz równie dobrze skonfigurować wtrysk dla MongoDatabase
, a może nawet MongoCollection
.
Używam tej strategii z Windsoru myself - można zobaczyć moje MongoInstaller
tutaj: https://gist.github.com/2427676 - pozwala moje zajęcia po prostu zrób to:
public class SomeClass
{
public SomeClass(MongoCollection<Person> people)
{ ... }
}
aby mieć zbiór wstrzyknięciu ładne i gotowe do użycia.
Dziękujemy za udostępnienie WindsorInstaller. Kod jest nieco stary i zastanawiałem się, czy masz zaktualizowaną wersję nowego mongodriver 2.0? Próbowałem go uaktualnić sam, ale nie jestem pewien, czy istnieje lepszy sposób? ' https://gist.github.com/kri5t/afcba8068badb62f5c9b –