Nie przejmuj się zbytnio otwieraniem i zamykaniem połączeń. Sterownik MongoDB C# utrzymuje wewnętrzną pulę połączeń, dzięki czemu nie będziesz ponosić kosztów otwierania i zamykania rzeczywistych połączeń za każdym razem, gdy tworzysz nowy MongoServer
obiekt.
Możesz utworzyć interfejs repozytorium, który uwidacznia logikę danych, i skompilować implementację MongoDB, która jest wstrzykiwana tam, gdzie jest potrzebna. W ten sposób kod połączenia MongoDB jest oddzielony od aplikacji, która widzi tylko IRepository.
Zachowaj ostrożność, próbując zaimplementować wzorzec typu jednostki pracy za pomocą MongoDB. W przeciwieństwie do SQL Server, nie można włączyć wielu zapytań do transakcji, która może zostać wycofana w przypadku niepowodzenia.
Aby zapoznać się z prostym przykładem wzorca repozytorium, który ma implementacje MongoDB, SQL Server i JSON, zapoznaj się z Kod przechowywania NBlog . Używa Autofac IoC do wstrzykiwania konkretnych repozytoriów do aplikacji ASP.NET MVC.