如何修复此错误'将'system.data.sqlclient.sqlconnection'修改为'string''

时间:2014-04-19 09:53:52

标签: c# sql sql-server

我正在开发一个C#类。除了这个错误外,一切正常:

  

将'system.data.sqlclient.sqlconnection'转换为'string'

请给我回复以解决此错误。

代码:

public void CreateConn()
{
    try 
    {
        if (constr.State == 0) 
        {
             constr.ConnectionString = strConnString;
             constr.Open();
        }
    } 
    catch (Exception exp) 
    {
        throw exp;
    }
}

此行发生错误:

constr.ConnectionString = strConnString;

1 个答案:

答案 0 :(得分:1)

使用ConfigurationManager返回的字符串

public void CreateConn()
{
    if (constr.State == ConnectionState.Closed) 
    {
         constr.ConnectionString = ConfigurationManager.ConnectionStrings
                                    ["RegistrationConnectionStri‌​ng"].ConnectionString;
         constr.Open();
    }
}

代码中的错误是尝试将SqlConnection的实例分配给ConnectionString属性,该属性是一个简单的字符串。
变量strConnString具有误导性的名称,在这种情况下根本不需要。

请注意,我已经删除了无用的try / catch,因为您没有对异常执行任何操作,只需重新抛出它就会破坏异常数据中的堆栈信息。

要避免的另一件事(我认为你可能有问题按原样编译代码)是使用常量0来检查连接状态。你应该使用适当的枚举