更改“时出错”;复制到输出目录”;从“;始终复制“;至“;不要复制“;

本文关键字:复制 出错 时出错 更改 输出 | 更新日期: 2024-09-17 00:54:30

我正试图从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();
}

更改“时出错”;复制到输出目录”;从“;始终复制“;至“;不要复制“;

我的心理调试能力告诉我,您在源代码文件中检查了Student.accdb,但没有在编译项目实际所在的二进制文件中检查。

我建议将以下路径复制到windows资源管理器中,看看Student.accdb是否真的存在。不采取整个路径。

F:'Prova'Prova'bin'Debug'Resources

如果您不希望在构建时覆盖文件,最好的解决方案是将Do Not Copy更改为Copy if Newer