日期:2014-05-18  浏览次数:20540 次

服务器控件如何访问WEBCONFIG中的配置?
在ASP.NET中,我们用:
string conString = WebConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;来读取配置文件中的数据库连接信息,
为了多项目共享代码,我新建一个ASP.NET服务器控件的解决方案,编译成DLL后在多个项目中引用该DLL,故在里面新建一个类,然后定义大量的常用操作,如根据一个SQL语句得到一个DataTable:
public static DataTable GetValueDataTable(string p_strSql)
{
  string conString = WebConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
  using(SqlConnection conn=new SqlConnection(conString))
  {
  ...
  }
}
使用上面的读取配置文件的办法编译通不过,报告错误如下:

错误 1 类型“System.Configuration.ConnectionStringSettingsCollection”在未被引用的程序集中定义。必须添加对程序集“System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”的引用。 E:\我的文档\Visual Studio 2008\Projects\WebSite1\ServerControl1\Sql.cs 17 21 ServerControl1
错误 2 无法将带 [] 的索引应用于“System.Configuration.ConnectionStringSettingsCollection”类型的表达式 E:\我的文档\Visual Studio 2008\Projects\WebSite1\ServerControl1\Sql.cs 17 32 ServerControl1
该如何处理?



------解决方案--------------------
你是不是没引用Web这个命名空间哦
------解决方案--------------------
using System.Configration;

string connStr = ConfigurationManager.ConnectionStrings["TestSqlConnection"].ConnectionString;
------解决方案--------------------
参考:

http://www.cnblogs.com/insus/articles/1405604.html