在尝试进行 Web 下载/阅读时,我已经看到了很多异步示例。但是我找不到 OleDb 的示例或任何东西(或者是否有更好的等价物?),我想使用 C# 5.0 的新的和简化的 Async 和 Await 功能。
这只是我现在如何使用 OleDb 的一个示例:
public void insertTafelloc(int tafelnr, string datum, string tijd)
{
tafelsupdate = false;
try
{
db.cmd.Connection = db.connection;
db.connection.Open();
db.cmd.CommandText = "SELECT * FROM tafels WHERE tafelnr = ? AND datum = ?";
db.cmd.Parameters.Add(new OleDbParameter("1", tafelnr));
db.cmd.Parameters.Add(new OleDbParameter("2", datum));
OleDbDataReader dataReader;
dataReader = db.cmd.ExecuteReader(CommandBehavior.CloseConnection);
while (dataReader.Read())
{
if (dataReader["tafelnr"].ToString() != "")
{
tafelsupdate = true;
}
}
dataReader.Close();
db.cmd.Parameters.Clear();
db.connection.Close();
}
catch (Exception ex) { MessageBox.Show(ex.Message); }
}
我确实运行了几个数据读取器,多次应要求运行,并且在新结果显示在表单上之前需要很长时间。另外,我正在使用 OleDb 访问 Access 数据库。