Удалить SPID после LINQ в Entity Framework
У меня есть приложение, в котором я использую Entity Framework для взаимодействия с базой данных MS SQL. В нем я делаю вызовы внутри Dbcontext, используя блоки. Проблема, с которой я сталкиваюсь, заключается в том, что даже после удаления Dbcontext SPID находится в состоянии ожидания до выхода из приложения. Как бы я удалить эти висячие SPID?
1 ответ
Вы, вероятно, не хотите, но это должно работать:
((SqlConnection)dbContext.Database.Connection).ClearAllPools();
Как упоминалось выше, это может и будет негативно влиять на производительность вашего приложения (и, возможно, других приложений). Возможно, реальный вопрос может быть, почему вы хотите удалить SPID?
Вы также можете добавить Pooling=false
к строке подключения, которая вообще не должна использовать приложение. В зависимости от вашего приложения это может или не может сильно повлиять на производительность.