我应该在哪里为我的类库添加连接字符串以及如何访问它们?

时间:2012-02-22 13:14:28

标签: c# connection-string

我有一个4/5项目的解决方案。

我目前在c#文件中硬编码了我的域项目的连接字符串。

我想将它放在web.config或其他东西中。从我在这里和其他地方阅读的内容,我应该将这些连接字符串存储在调用应用程序的Web配置中?

如果是,我如何访问它?

当我在课程库中做这样的事情时:

ConnectionStringSettingsCollection connectionStrings =
    connectionStringsSection.ConnectionStrings;

找不到类型或命名空间,我错过了引用或什么?

4 个答案:

答案 0 :(得分:5)

您需要在主项目中添加System.Configuration的引用。

然后您可以像这样访问连接字符串......

System.Configuration.ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString;//<- last bit for a string version of the full connection string

ConfigurationManager还允许您从web.config文件中访问许多其他有用的属性(这也适用于app.config文件)

答案 1 :(得分:4)

config架构中存在连接字符串的现有架构。

这属于<configuration>元素:

<connectionStrings>
  <add name="example" connectionString="..."/>
</connectionStrings>

在您的代码中,您应该使用ConfigurationManager来访问它们。要获得对它的引用,您需要在文件中添加using System.Configuration;命名空间,并为项目添加System.Configuration.dll程序集引用(如果尚未存在)。

string conn = ConfigurationManager.ConnectionStrings["example"];

答案 2 :(得分:3)

使用主应用程序定义并访问类lib

ConnectionStrings:使用System.Configuration添加; 添加ref:System.Configuration;

ConfigurationManager.ConnectionStrings["key"]

alternetive

System.Configuration.ConfigurationSettings.AppSettings["key"])

答案 3 :(得分:0)

在你的代码中使用它。

String sqlDbConn = 
        ConfigurationManager.ConnectionStrings["ApplicationServices"].ToString();

该名称也应在您的网络配置中定义;

<connectionStrings>
 <add name="ApplicationServices"
       connectionString="You database information"
      />

 </connectionStrings>

并使用System.Configuration添加;命名空间