Как я могу взять следующий код и сделать каждую итерацию myValues асинхронной (в отношении выполнения команды, а не самого цикла)?Активировать параметризованный запрос/команду?
using (var connection = new SqlConnection(CONNECTION_STRING))
using (var command = new SqlCommand(query, connection))
{
connection.Open();
command.Parameters.Add("@myParameter", SqlDbType.VarChar)
foreach(string myValue in myValues)
{
command.Parameters["@myParameter"].Value = myValue;
using (var dr = command.ExecuteReader(CommandBehavior.SingleResult))
{
while (dr.Read())
{
//do something
}
}
}
}
https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executereaderasync(v=vs.110).aspx – David
Вы можете поместить код в BackgroundWorker поэтому вы можете выполнять другие задачи при обновлении. – jdweng
@jdweng Нет причин использовать BGW, если вы выполняете работу, используя по существу асинхронные операции ввода-вывода. Здесь нет работы с ЦП. – Servy