Вот код, который я сделал, он обычно работает, но иногда не работает (1 из 4 раз больше или меньше):
...
List<string> _items = new List<string>();
...
using (SqlCeConnection con = new SqlCeConnection(Globals.conString))
{
string codbultocomp = null;
con.Open();
using (SqlCeCommand cmd = new SqlCeCommand("SELECT codbultocomp FROM envios WHERE codigodestino=@codigodestino AND estado=@pendiente", con))
{
cmd.Parameters.AddWithValue("@codigodestino", codigoDestino);
cmd.Parameters.AddWithValue("@pendiente", "pendiente");
SqlCeDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
codbultocomp = reader["codbultocomp"].ToString();
_items.Add(codbultocomp);
}
reader.Close();
}
listBox1.DataSource = _items;
}
При сбое приложение зависает, и если я приостанавливаю отладку, оно останавливается в последней скобке. Я попытался показать ошибку, используя блок try / catch, но он ничего не показал и остановился в том же месте. Я также пытался посмотреть список источников данных показывает эту ошибку в списке «смотреть»:
Unable to evaluate expression because the code is optimized or a native frame is on top of the call stack.
Есть идеи, что я делаю не так?