C# 如何从库中访问连接字符串
我在一个单独的类库项目中有一个web项目(mvc)和数据访问层。我需要访问该库项目中app.config中的连接字符串 ConfigurationManager.ConnectionString[0]。ConnectionString提取了一些奇怪的内容。我在库的配置文件和web项目的配置文件中都没有这种设置 App.config如下所示:C# 如何从库中访问连接字符串,c#,web-config,connection-string,app-config,class-library,C#,Web Config,Connection String,App Config,Class Library,我在一个单独的类库项目中有一个web项目(mvc)和数据访问层。我需要访问该库项目中app.config中的连接字符串 ConfigurationManager.ConnectionString[0]。ConnectionString提取了一些奇怪的内容。我在库的配置文件和web项目的配置文件中都没有这种设置 App.config如下所示: <?xml version="1.0" encoding="utf-8" ?> <configuration> <con
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="DALConnectionString" connectionString="User ID=sa;Password=pass;Initial Catalog=db;Data Source=srv\SQL2005;" />
</connectionStrings>
</configuration>
您应该在web.config中添加上面显示的片段,然后在运行时,即使在类库中运行,配置管理器也会使用它。您无法访问DLL的app.config
app.config
仅适用于入口点程序集,或web.config
适用于web项目
尝试将连接复制到入口点配置,或通过解析配置XML加载配置-不推荐使用。在这种情况下,您的库应用于
数据访问层(DAL)库中的类应将连接字符串作为构造函数参数
或属性值
这将确保您的DAL也可以用于其他项目,并且不与mvc web应用程序绑定
让使用DAL的代码从配置文件中读取连接字符串并将其注入类的构造函数。默认情况下,类库无法访问配置文件 类库的客户端(在本例中是web项目)可以提供配置设置 因此,将所有相关设置(连接字符串)放入web的配置文件中。类库中的
ConfigurationManager
代码将使用web项目配置设置