本人一网站,在Web项目中Web.Config中,如下配置数据库连接字符串 
<connectionStrings> 
    <add name="DatebaseConnection" 
connectionString="server=.;database=XXX;uid=XXX;pwd=XXX"/> 
</connectionStrings> 再在DAL项目自定义数据库连接类中如下调用: 
SqlConnection MyConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["DatabaseConnection"].ConnectionString); 
总是报如下错误:未将对象引用设置到对象的实例。 而如果在Web.Config中,如下配置数据库连接字符串 
<appSettings> 
    <add key ="DatabaseConnection" value="server=.;database=XXX;uid=XXX;pwd=XXX"/>  
</appSettings> 再在自定义数据库连接类中如下调用: 
SqlConnection MyConnection = new SqlConnection(ConfigurationManager.AppSettings["DatabaseConnection"]);则没有错误 报的错误是未将对象引用到对象的实例

解决方案 »

  1.   

    <appSettings> 
        <add key ="DatabaseConnection" value="server=.;database=XXX;uid=XXX;pwd=XXX"/>  
    </appSettings> ConfigurationSettings.AppSettings["DatabaseConnection"]
      

  2.   


    这一句你把ConfigurationManager.ConnectionStrings["DatabaseConnection"].ConnectionString先用一个string类型接收试试
      

  3.   

      DBhelper类的中:
     protected static string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
    Web.config中这样:
    <connectionStrings>
    <add name="ConnectionString" connectionString="server=.\sqlexpress;user=用户名;pwd=密码;database=数据库;"/>
    </connectionStrings>
      

  4.   

    <connectionStrings>
    <add name="DatabaseConnection" connectionString="Data Source=XX;Initial Catalog=XXX;Persist Security Info=True;User ID=sa;Password=XX" providerName="System.Data.SqlClient"/>
    </connectionStrings>
    private string ConnectStr = ConfigurationManager.ConnectionStrings["DatabaseConnection"].ConnectionString;2.AppSetting中定义<add key="DatabaseConnection" value="XXXX"/>string Value = System.Configuration.ConfigurationManager.AppSettings["DatabaseConnection"];
                        
            
      

  5.   

    我按照二楼的的方法调试了,还是不行
    错误 1 TestCase 'Test.GuestBookDAlTest.TestAdd' failed: System.NullReferenceException : 未将对象引用设置到对象的实例。
       在 Hao.SQLServerDAL.GuestBook.AddGuestBook(GuestBookInfo guestBook) 位置 
    在即时窗口查看
    输入ConfigurationManager.ConnectionStrings[0]
    显示
    {data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true}
        base {System.Configuration.ConfigurationElement}: {data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true}
        ConnectionString: "data source=.\\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
        Name: "LocalSqlServer"
        ProviderName: "System.Data.SqlClient"
    很明显我加的ConnectionString字符节根本就没有连接到。我不知怎么样才能连接到,高手帮忙解决一下。谢谢。
      

  6.   

    ConfigurationManager这个引用类可能没用引用哦
      

  7.   

    在vs2005里面的话能调用出来但是不能用的
    所以要使用的时候最好是重新加载一下那个configuration
    添加引用--添加web引用里面找到system.configuration就行了
      

  8.   

    我是在VS2008下面做的,引用了using System.Configuration;
      

  9.   

      把Bin目录的 dll文件都删除了,在重新生成解决方案,在运行看看
      

  10.   

    你的web.config文件需要放到bin里面
      

  11.   

    2008不清楚
    不过还是建议你重新引用下
    不要直接添加using system.configuration;
    按照我刚才说的方法试试
      

  12.   

    你的代码:
    <connectionStrings>
        <add name="DatebaseConnection"
    connectionString="server=.;database=XXX;uid=XXX;pwd=XXX"/>
    </connectionStrings> "DatebaseConnection"里的"Date"应该是"Data"吧?
      

  13.   


    同意楼上的..你的   名字都不对啊..
    add  里面是 DatebaseConnection
    DAL项目自定义数据库连接类里面是 DatabaseConnection
    换成一样的看看
      

  14.   

     <connectionStrings>
        <add name="LocalSqlServer" connectionString="Data Source=.;Initial Catalog=socanTest;Persist Security Info=True;User ID=sa;Password=1"
          providerName="System.Data.SqlClient" />
        <add name="HaoCompanyConnectionString" connectionString="Data Source=.;Initial Catalog=HaoCompany;Integrated Security=True"
          providerName="System.Data.SqlClient" />
        <add name="HaoCompanyConnectionString2" connectionString="Data Source=.;Initial Catalog=HaoCompany;User ID=sa;Password=1"
          providerName="System.Data.SqlClient" />
      </connectionStrings>我重新加了两个在里面。
    然后用ConfigurationManager.ConnectionStrings.Count查看数量 Count=1
    查看ConfigurationManager.ConnectionStrings[0]
    显示结果:
    {data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true}
        base {System.Configuration.ConfigurationElement}: {data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true}
        ConnectionString: "data source=.\\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
        Name: "LocalSqlServer"
        ProviderName: "System.Data.SqlClient"
    我想估计根本就没有连接到web.config这个文件里面的字符节??????
    但我不知道为什么会连接不到。
      

  15.   

    connectionStrings里添加section
    参考
      

  16.   

    如果不添加引用根本就调不出ConfigurationManager类。显然这个不是这样的。你仔细看看。是你的NAME名字和代码里[]里的名字不一样。DATE和DATA真是的。。
      

  17.   

    Web.config<configuration>
      <appSettings>
        <add key="DBConnectionString" value="Data Source=.;Initial Catalog=xxx;Persist Security Info=True;User ID=xxx;Password=xxx"/>
      </appSettings>
    <connectionStrings/>
    xxx.cs ConfigurationManager.AppSettings["DBConnectionString"];