【问题标题】:Not able to connect to database with connection string in app.config无法使用 app.config 中的连接字符串连接到数据库
【发布时间】:2013-07-22 12:06:25
【问题描述】:
DataSet ds = new DataSet("Transactions");

using (SqlConnection conn = new SqlConnection("myConnectionString"))
{
   SqlCommand sqlComm = new SqlCommand("[dbo].[GetFullTransactionList]", conn);
   sqlComm.CommandType = CommandType.StoredProcedure;

   SqlDataAdapter da = new SqlDataAdapter();
   da.SelectCommand = sqlComm;
   da.Fill(ds);
}

return ds;

app.config的相关内容:

<configuration>
   <connectionStrings>
      <add name="myConnectionString"
           connectionString="Data Source=LAPTOP-LT;Initial Catalog=myDb;User ID=sa;Password=abc"
           providerName="System.Data.SqlClient" />
  </connectionStrings>
</configuration>

我遇到了这个异常:

初始化字符串的格式不符合规范 从索引 0 开始。说明:发生未处理的异常 在当前 Web 请求执行期间。请查看 堆栈跟踪以获取有关错误及其位置的更多信息 源于代码。

异常详细信息:System.ArgumentException:格式 初始化字符串不符合规范,开始于 索引 0。

来源错误:

Line 44:             DataSet ds = new DataSet("Transactions");
Line 45:             using (SqlConnection conn = new SqlConnection("myConnectionString"))

【问题讨论】:

  • 是 [dbo].[GetFullTransactionList] 存储过程需要传递任何参数吗?

标签: c# asp.net connection-string


【解决方案1】:

在 app.config 中引用连接字符串的正确方法是:

string cnnString = ConfigurationManager.ConnectionStrings["yourCnnString"].ConnectionString;
using(SqlConnection conn = new SqlConnection(cnnString))
{ 

}

别忘了最后的属性ConnectionString

【讨论】:

  • 它无法从 App.config 访问连接字符串
  • 什么意思?你有任何错误信息吗?你包括using System.Configuration;吗?
  • 它给出了一个空引用异常。是的,我已经使用 System.configuration;
  • 我能想到的唯一可能是字符串youCnnString。这应该是你的myConnectionString
【解决方案2】:

要使用配置文件中的连接字符串,您需要访问它ConfigurationManager

原来是这样:

   using (SqlConnection conn = new 
     SqlConnection(ConfigurationManager.ConnectionStrings["myConnectionString"]))
   {
          ...
   }

请参阅documentation 以获取更多信息

【讨论】:

    【解决方案3】:

    SqlConnection 期望一个真正的连接字符串,而不是来自 app.config 的键。尝试用

    阅读它
    ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString
    

    【讨论】:

      猜你喜欢
      • 2013-02-01
      • 1970-01-01
      • 2023-04-04
      • 1970-01-01
      • 2016-03-18
      • 1970-01-01
      • 2013-11-08
      • 2012-01-18
      • 1970-01-01
      相关资源
      最近更新 更多