У меня есть консольное приложение C # со следующим кодом:
using (var cn = new SqlConnection())
{
cn.ConnectionString = "Data Source=localhost;Integrated Security=True;Persist Security Info=False";
cn.Open();
System.Console.WriteLine("past open");
}
System.Console.ReadLine();
Во время работы я установил две точки останова.Один в WriteLine и один в ReadLine.Я также открыл Sql Server Management Studio (SSMS) и наблюдаю за списком процессов в мониторе активности.
Когда я запускаю приложение и достигаю своей первой точки останова (на линии WriteLine), я вскоре вижу процесс в списке процессов SSMS, чье имя приложения ".Net SqlClient Data Provider" и чья база данных ""мастер".
Когда я перейду к второй точке останова F5, я ожидаю, что процесс будет удален из списка процессов, так как к этому моменту я закрыл SqlConnection.Однако процесс остается в списке, пока приложение не закроется.
Я предполагаю, что процесс остается в списке, так как мое соединение на самом деле не закрывается.Если мое предположение верно, то что еще мне нужно сделать, чтобы закрыть соединение?Если мое предположение неверно, то почему мой процесс все еще указан и как я могу проверить, действительно ли мое соединение было правильно закрыто?
Спасибо.