Я подключаюсь к каталогу LDAP на C #, поэтому я использовал класс DirectoryEntry.
Когда вы выполняете «новый DirectoryEntry» с адресом, логином и паролем, он должен подключиться к каталогу LDAP.
Однако, даже если соединение не работает, оно возвращается без проблем, и переменная directoryentry установлена.
Так я знаю, что мое соединение действительно открыто? Прямо сейчас я использую очень-очень уродливый прием: я помещаю «if (mydirectory.SchemaEntry)», который генерирует исключение, если соединение не было установлено, потому что некоторые члены DirectoryEntry, такие как SchemaEntry, не не устанавливается, если соединение не удалось. Но 1: это должно быть 11/10 по шкале уродства 2: это займет много времени, прежде чем потерпеть неудачу.
Так как же лучше всего это сделать? Конечно, Microsoft должна была предоставить что-то (даже если я использую каталог LDAP, а не Active Directory), чтобы узнать, действительно ли я подключен?