类库数据库连接字符串

时间:2012-12-29 16:36:01

标签: asp.net-mvc-3 shared-libraries connection-string

我有一个使用相同域模型的多个项目的解决方案。因此,我创建了一个包含我的域模型的类库。此类库还包含我的项目中使用的其他参数。然后我在每个项目中添加对类库的引用。 我的类库还有一些派生自this example的存储库类。

但是我遇到连接数据库的问题。我希望我的类库能够连接到数据库,因为我在那里定义了我的数据库上下文类,在那里我设置了我的数据库集。对于单个项目,我通常在web.config文件中定义我的连接字符串。但是类库没有web.config文件。如何设置连接字符串?

修改

假设我有我的数据库上下文的构造函数mydbcontext,在类库中定义为

public mydbcontext() : base(ConfigurationManager.ConnectionStrings["DatabaseCon"].ConnectionString)
    {

    }

如果我理解这一点,可以将每个项目的连接字符串的名称设置为“DatabaseCon”吗?

2 个答案:

答案 0 :(得分:1)

你没有。

将连接字符串作为依赖项传递给任何需要它的类。

您可以封装对它的访问 - 但您应该在使用此库的任何程序中实例化它。该程序将在其配置中保存连接字符串。

答案 1 :(得分:0)

您应该在使用类库的应用程序的web.config文件中定义连接字符串。作为替代方案,您可以将连接字符串硬编码到类库中DbConext的构造函数中 - 非常糟糕的方法,因为您将无法从外部修改它 - 例如,您将很难管理不同的不同环境的连接字符串 - 分段,生产......