如何通过一次调用逐个顺序运行sql语句

时间:2013-12-04 14:02:51

标签: c# sqlconnection

我正在尝试使用此代码 -

SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["train_debConnectionString"].ConnectionString);

用于从webconfig文件的连接字符串名称创建连接字符串。

我收到此错误 - 对象引用未设置为对象的实例。

请告诉我如何只使用webconfig文件中的连接字符串名称创建一个sql连接。

1 个答案:

答案 0 :(得分:4)

您不想只构建一个 SqlConnection。你永远不应该分享联系。涉及资源问题。当你想要一个连接,建立它,打开它,使用它并处理它。

此外,在使用对象时,您需要利用using语句:

var cString = ConfigurationManager
    .ConnectionStrings["train_debConnectionString"]
    .ConnectionString;
using (SqlConnection c = new SqlConnection(cString))
{
    using (SqlCommand cmd = new SqlCommand(sqlCmd, c))
    {

    }
}

更新:如果问题是以更简洁的方式获取连接字符串,您可以自己构建一个设置类:

public static class AppSettings
{
    public static string ConnString
    {
        get
        {
            return ConfigurationManager
                .ConnectionStrings["train_debConnectionString"]
                .ConnectionString
        }
    }
}

然后执行此操作:

using (SqlConnection c = new SqlConnection(AppSettings.ConnString))
{
    using (SqlCommand cmd = new SqlCommand(sqlCmd, c))
    {

    }
}