具有Ninject依赖注入的ASP.NET MVC应用程序中的MongoDB官方C#驱动程序

有没有人有一个代码示例遵循在ASP.NET MVC应用程序中使用带有Ninject的MongoDB官方C#驱动程序的最佳实践?

我看起来像这样:

namespace WebApp
{
    public class DataModule : NinjectModule
    {
        public override void Load()
        {
            var conventions = new ConventionProfile().SetElementNameConvention(new CamelCaseElementNameConvention());
            BsonClassMap.RegisterConventions(conventions,x => true);

            var server = MongoServer.Create(connectionString);
            var database = server.GetDatabase("webapp");
            Bind<MongoDatabase>().ToConstant(database);
        }
    }
}

由于这段代码是单身,我对此感觉不好:|

谢谢

解决方法

MongoServer可以保持单身. MongoDatabase也是如此.它们都是线程安全的,即使您每次都创建一个新的MongoServer和MongoDatabase,您也会返回相同的实例,因为只要连接字符串完全相同,它们就会缓存在下面.

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...