Я получил это исключение Сообщ:Как я могу предотвратить превращение в тупик?
Transaction (Process ID 55) зашло в тупик на ресурсах блокировки с другим процессом и был выбран в качестве тупиковой жертвы.
Единственная строка моего кода, который был замешан в трассировке стека была последней здесь:
public static DataTable ExecuteSQLReturnDataTable(string sql, CommandType cmdType, params SqlParameter[] parameters)
{
using (DataSet ds = new DataSet())
using (SqlConnection connStr = new SqlConnection(CPSConnStr))
using (SqlCommand cmd = new SqlCommand(sql, connStr))
{
cmd.CommandType = cmdType;
cmd.CommandTimeout = EXTENDED_TIMEOUT;
foreach (var item in parameters)
{
cmd.Parameters.Add(item);
}
try
{
cmd.Connection.Open();
new SqlDataAdapter(cmd).Fill(ds);
Это универсальный метод, который я использую для всех видов запросов; Я не изменил его недавно, и я никогда не видел этого конкретного исключения раньше.
Что я могу сделать, чтобы избежать повторного выброса этого исключения?