我有一个使用相同域模型的多个项目的解决方案。因此,我创建了一个包含我的域模型的类库。此类库还包含我的项目中使用的其他参数。然后我在每个项目中添加对类库的引用。 我的类库还有一些派生自this example的存储库类。
但是我遇到连接数据库的问题。我希望我的类库能够连接到数据库,因为我在那里定义了我的数据库上下文类,在那里我设置了我的数据库集。对于单个项目,我通常在web.config文件中定义我的连接字符串。但是类库没有web.config文件。如何设置连接字符串?
修改
假设我有我的数据库上下文的构造函数mydbcontext,在类库中定义为
public mydbcontext() : base(ConfigurationManager.ConnectionStrings["DatabaseCon"].ConnectionString)
{
}
如果我理解这一点,可以将每个项目的连接字符串的名称设置为“DatabaseCon”吗?
答案 0 :(得分:1)
你没有。
将连接字符串作为依赖项传递给任何需要它的类。
您可以封装对它的访问 - 但您应该在使用此库的任何程序中实例化它。该程序将在其配置中保存连接字符串。
答案 1 :(得分:0)
您应该在使用类库的应用程序的web.config文件中定义连接字符串。作为替代方案,您可以将连接字符串硬编码到类库中DbConext
的构造函数中 - 非常糟糕的方法,因为您将无法从外部修改它 - 例如,您将很难管理不同的不同环境的连接字符串 - 分段,生产......