在ASP.NET MVC中配置MongoDB连接的最佳位置是什么?

时间:2012-05-04 01:32:43

标签: asp.net-mvc mongodb dependency-injection

我使用的另一个MVC框架 - Symfony2 - 使用依赖注入器来仔细配置和管理依赖项。

ASP.NET MVC是否有类似的东西可以让我配置MongoDB连接,然后将其传递给我可以使用的控制器逻辑?

2 个答案:

答案 0 :(得分:1)

这通常在web.config文件中完成

 <appSettings>
    <add key="MONGOHQ_URL" value="mongodb://localhost/YourDBName"/>
 </appSettings>

可以像这样引用该值......

public class ConfigEnvironment
   {
      public static string GetConnectionString()
      {
         return ConfigurationManager.AppSettings.Get("MONGOHQ_URL") ??
                "mongodb://localhost";
      }
   }

使用它来创建数据库

MongoDatabase.Create(ConfigEnvironment.GetConnectionString())

答案 1 :(得分:1)

您可以在Asp.net MVC中使用许多不同的依赖注入库,这是一个(非全面的)列表:

  • StructureMap
  • Ninject
  • Autofac
  • 统一
  • Spring.net。

如果你在Nuget中寻找它们,通常会有一个容器本身的包,以及一个添加Asp.Net MVC插件的不同包。

看看它们,弄清楚你喜欢哪种风格,然后将mongo db连接配置为按请求,将连接添加到控制器构造函数,然后离开。如果你选择一个lib并更新你的问题,我相信有人会回答特定的代码等。