0

我想与 sql 数据库建立连接。我想将连接字符串放在web config文件中。所以我在web配置文件中写了代码:

<add name="DBCS" connectionString="data source=sahil-pc\\sqlexpress; database=abadakDb; Integrated Security=true " providerName="System.Data.SqlClient"/>

现在,我想在asp.net中建立连接,所以我在我的cs文件中写了一个方法:

 private DataSet getData(string procName, SqlParameter param)

    {
        string cs = ConfigurationManager.ConnectionStrings["DBCS"].ConnectionString;

        SqlConnection conn = new SqlConnection(cs);

        SqlDataAdapter da = new SqlDataAdapter(procName, conn);

        da.SelectCommand.CommandType = CommandType.StoredProcedure;

        DataSet ds = new DataSet();

        da.Fill(ds);

        return ds;

    }

在这里,我在 da.Fill(ds) 行中遇到错误。它说

System.InvalidOperationException: Instance failure.

我检查了互联网上的代码。我不知道我哪里出错了。如果我在函数中明确写入连接字符串,那么它可以正常工作。所以问题在于网络配置文件中的连接字符串或网络配置文件的调用。你能帮帮我吗?

4

1 回答 1

1

将 web.config 中的连接字符串更改为:

"data source=sahil-pc\sqlexpress; database=abadakDb; Integrated Security=true " providerName="System.Data.SqlClient"

在代码中,\\ 解析为 \,它与来自 web.config 的完全相同

与在字符串之前放置文字 @ 相同

于 2013-05-19T23:23:16.567 回答