C#Winform的数据库连接疑问?!
这是我之前写的连接数据库的类:(我的数据库放在项目目录【Student】的同级目录【DataRe】下)
public class database
{
public SqlConnection mySqlConnection = new SqlConnection();
public string str = "server";
//完成数据库连接的构造函数
public database()
{
mySqlConnection.ConnectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\程序\The Class Management System\DataRe\xsgl_Data.MDF;Integrated Security=True";
mySqlConnection.Open();
}
}
但是更换文件夹路径后因为绝对路径不对造成无法连接数据库。后来就想通过函数来获取当前路径的名称,从来获得绝对路径。代码如下:
public class database
{
public SqlConnection mySqlConnection = new SqlConnection();
public string str = "server";
//完成数据库连接的构造函数
public database()
{
string path = System.Windows.Forms.Application.StartupPath + @"../../../";
System.IO.Directory.SetCurrentDirectory(path);
string strFilePath = System.IO.Directory.GetCurrentDirectory() + @"\DataRe\xsgl_Data.mdf";
string dr = string.Format(@"Data Source=.\SQLEXPRESS;AttachDbFilename={0};Integrated Security=True", strFilePath);
mySqlConnection.ConnectionString = '"' + dr + '"';
mySqlConnection.Open();
}
}
经测试,mySqlConnection.ConnectionString接收的确实是与之前相同的字符串"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\程序\The Class Management System\DataRe\xsgl_Data.MDF;Integrated Security=True"
但是编译的时候却提示:未处理ArgumentException不支持关键字: “"data source”。
谁知道怎么解决啊?!到底哪里错了呢?!