Я не уверен, что это ожидаемое поведение, но я ожидал бы, что оно будет действовать по-другому.
После выполнения следующего кода
using (var directoryEntry = new DirectoryEntry(
directoryPath,
ConfigurationManager.AppSettings["ldapUsername"],
ConfigurationManager.AppSettings["ldapPassword"],
AuthenticationTypes.Anonymous))
{
// ldap query
}
Когда запрос выполняется и , как я и ожидал, я мог видеть активный сеанс на LDAP.
Выполните следующую команду на машине LDAP:
netstat -nat | findstr my_ip_address | findstr :389
Я смог увидеть активный сеанс на LDAP:
TCP ldap_ip_address:389 my_ip_address:24730 ESTABLISHED InHost
Но когда мы выходим из раздела using
и удаляем DirectoryEntry
/ DirectorySearcher
, я бы ожидал, что сеанс будет закрыт. Тем не менее, когда я снова запустил команду netstat, я увидел тот же активный сеанс.
Есть ли причина, по которой сеанс не удаляется в LDAP? Это известная проблема?