Не се притеснявайте много за отварянето и затварянето на връзки. Драйверът MongoDB C# поддържа вътрешен пул за връзки, така че няма да страдате от допълнителни разходи за отваряне и затваряне на действителни връзки всеки път, когато създавате нов MongoServer
обект.
Можете да създадете интерфейс на хранилище, който разкрива вашата логика на данните, и да изградите внедряване на MongoDB, което се инжектира, където е необходимо. По този начин специфичният за MongoDB код за връзка се абстрахира от вашето приложение, което вижда само IRepository.
Бъдете внимателни, опитвайки се да внедрите шаблон тип единица работа с MongoDB. За разлика от SQL Server, не можете да включите множество заявки в транзакция, която може да бъде върната назад, ако едната е неуспешна.
За прост пример за модел на хранилище, който има реализации на MongoDB, SQL Server и JSON, вижте Код за съхранение на NBlog . Той използва Autofac IoC за инжектиране на конкретни хранилища в ASP.NET MVC приложение.