【问题标题】:ConnectString didn't work in C#ConnectString 在 C# 中不起作用
【发布时间】:2018-05-04 04:05:45
【问题描述】:
public static DataSet ParseDatabaseData(string sheetName)
{
string connectionString = "Provider=System.Data.SqlClient;Data Source= MHSPC56888_VM1\\SQLEXPRESS;Initial Catalog=xxxxxxx;User id=xx;Password=xxxxx;";
SqlConnection conn = new SqlConnection(connectionString);
string strSQL = "SELECT * FROM [" + sheetName + "$]";
SqlCommand cmd = new SqlCommand(strSQL, conn);
conn.Open();
DataSet dataset = new DataSet();
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
adapter.Fill(dataset);
conn.Close();
return dataset;
}
错误表明'provider'关键字错误。
请帮我纠正如何通过连接字符串连接数据库?
【问题讨论】:
标签:
c#
sql-server
connection-string
【解决方案1】:
您无需在连接字符串中指定Provider。
试试这样:
public static DataSet ParseDatabaseData(string sheetName)
{
string connectionString = "Data Source= MHSPC56888_VM1\\SQLEXPRESS;Initial Catalog=xxxxxxx;User id=xx;Password=xxxxx;";
【解决方案2】:
您可以将连接字符串放在 web.config 或 app.config 中,并在需要的地方使用配置,而不是在单个文件本身中提及连接字符串。
web.config 的示例将连接字符串放在<configuration> 下,您可以在此处提供提供程序名称:
<configuration>
<connectionStrings>
<add name="ConnString"
connectionString="Data Source= MHSPC56888_VM1\\SQLEXPRESS;Initial Catalog=xxxxxxx;User id=xx;Password=xxxxx;"
providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
在文件里面
public static DataSet ParseDatabaseData(string sheetName)
{
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString);
注意:为ConfigurationManager.添加using System.Configuration;