2011-08-22 221 views
0

我不断收到ConnectionString属性尚未初始化

ConnectionString属性尚未初始化

我正在寻找一个小时,我尝试应用解决方案,我的项目错误,但,它没有工作

我将错误日志,SQL表

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Configuration; 
using System.Data.SqlClient; 
using System.Data; 

namespace ErrorLog 
{ 
    internal class LogToDB : ILog 
    { 
     static string connection_string = ConfigurationSettings.AppSettings["Sever"]; 

     public void logNow(string strError) 
     { 
      SqlConnection conn = new SqlConnection(connection_string); 
      List<string> errors = new List<string>(); 

      try 
      { 
       string strSQL = "insert_errolog"; 

       SqlDataAdapter mySA = new SqlDataAdapter(strSQL, conn); 
       mySA.SelectCommand.CommandType = CommandType.StoredProcedure; 
       mySA.SelectCommand.Parameters.Add(new SqlParameter("@errorMsg", SqlDbType.VarChar, 50)); 

       mySA.SelectCommand.Parameters["@errorMsg"].Value = strError; 

       DataSet myDS = new DataSet(); 
       mySA.Fill(myDS); 
      } 
      catch (Exception e) 
      { 
       errors.Add("Error: " + e.ToString()); 
      } 
      finally 
      { 
       conn.Dispose(); 
       conn = null; 
      } 
     } 
    } 
} 

这就是App.config文件

<configuration> 
    <appSettings> 
     <add key="Destination" value="ToSQL"/> 
     <add key="Sever" value="Data Source=MYSQLSEVER ;Initial Catalog=Myproject;User Id=test1;Password=12345"/> 
    </appSettings> 
</configuration> 

当我插入的数据,它抛出一个异常:

ConnectionString属性尚未初始化

有谁看到了问题在我的代码?

+1

为什么您使用'appSettings'而不是现有的'connectionStrings'配置节? – Oded

+1

确定MYSQLSEVER后应该有空格吗? – beny23

+0

你真的打电话给你的服务器'SEVER'(或者你错过了一个'R'来让它成为'SERVER'吗?) –

回答

0

您可以使用类似这样的连接字符串(以app.config)中:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <connectionStrings> 
    <add name="MyDBConnectionString" providerName="System.Data.SqlClient" 
     connectionString="Data Source=localhost;Initial Catalog=MySQLServerDB; Integrated Security=true" /> 
    </connectionStrings> 
</configuration> 
0

你不打开你的连接。

conn.Open(); 
-1

在这行代码
static string connection_string = ConfigurationSettings.AppSettings["Sever"];
你应该写的 “connectionstring”,而不是 “Server”。

0

尝试harcoding您的连接字符串,以确认是否其工作或没有

替换该行与 静态字符串connection_string = ConfigurationSettings.AppSettings [ “Sever的”];

static string connection_string = "Data Source=MYSQLSEVER ;Initial Catalog=Myproject;User Id=test1;Password=12345"; 

其是否正常工作,如果这样做,那么你的连接字符串值不正确地AppSettings的牵强。

0

.NET开发,

您可以将代码转换成C#

你应该做这样的

使全局连接变量

dim con as new SQLConnection 
con.connectionsting = "Set your connection string" 
con.open 

'after when you write what your code then write 

con.close 

它会解决您的连接属性未初始化问题

希望它有助于。

相关问题