这是我的更新方法
public void Update(string query, List<OleDbParameter> parameters)
{
OleDbCommand cmd = new OleDbCommand();
OleDbTransaction transaction = null;
query = "UPDATE " + query;
foreach (OleDbParameter parameter in parameters)
{
cmd.Parameters.Add(parameter);
}
this._Connect();
transaction = _connection.BeginTransaction();
cmd.Connection = _connection;
cmd.CommandText = query;
cmd.Transaction = transaction;
cmd.Prepare();
int linesUpdated = cmd.ExecuteNonQuery();
transaction.Commit();
this._Disconnect();
}
全班
public class DBAdapter
{
private OleDbConnection _connection;
private void _Connect()
{
this._connection = new OleDbConnection();
_connection.ConnectionString = ConfigurationManager.ConnectionStrings[1].ConnectionString;
_connection.Open();
}
private void _Disconnect()
{
_connection.Close();
}
public void Update(string query, List<OleDbParameter> parameters)
{
...
}
}
当我启动我的应用程序时,这很有效:
但是,当我关闭我的应用并再次启动它时,它会显示旧值,然后显示新值,就像我没有做任何更改一样。我的代码出了什么问题?
编辑:我发现了问题。我的.mdb文件位于// Assets / Database /,当我运行我的应用程序时,该文件被复制到bin / Debug / assets / Databases /中。 我该如何更新原始文件?
编辑(2):解决了! Can I commit changes to actual database while debugging C# in Visual Studio?
答案 0 :(得分:0)
只是你可以改变连接字符串的路径来更新你的原始文件,但我不建议你我建议你右键单击解决方案资源管理器中的原始文件并选择属性并设置“复制到输出目录”到“复制”如果更新“