我试图从我的c#应用程序中保存数据库中的数据。我通过项目属性在资源中添加了我的数据库,复制了我的代码中生成的字符串,并将"复制到输出目录"来自"永远复制"到"不要复制"。当我运行程序时,它给了我这个错误:
无法找到文件' F:\ Prova \ Prova \ bin \ Debug \ Resources \ Student.accdb'
但文件就在那里。
任何帮助?
private void button1_Click(object sender, EventArgs e)
{
OleDbConnection connection = new OleDbConnection();
connection.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Resources\Student.accdb;Persist Security Info=True";
connection.Open();
OleDbCommand command = new OleDbCommand();
command.Connection = connection;
command.CommandText = "INSERT INTO Student(Student_ID, First_Name) VALUES ('" + textBox1.Text + "','" + textBox2.Text + "')";
command.ExecuteNonQuery();
MessageBox.Show("Data saved");
connection.Close();
}
答案 0 :(得分:1)
我的通灵调试功能告诉我您在源代码文件中检查了Student.accdb
,但是您没有在编译项目实际所在的二进制文件中检查它。
我建议将以下路径完全复制到Windows资源管理器中,看看Student.accdb
是否确实在那里。不要走整条路。
F:\Prova\Prova\bin\Debug\Resources
如果您不希望在构建时覆盖该文件,最佳解决方案是将Do Not Copy
更改为Copy if Newer