Как проверить существование ou в активной директории с vb.net? - PullRequest
0 голосов
/ 05 марта 2009

Я пытаюсь интегрировать БД человеческих ресурсов в Active Directory. Как только я использую sql, получаю все лица и отдел, а затем пишу в объявление. но если отдел построил новое, как проверить, существует или новый в активном каталоге, также человек, также компьютер.

Ответы [ 3 ]

1 голос
/ 26 мая 2009

Эта статья должна быть полезной: http://www.codeproject.com/KB/IP/LDAP_Using_VBnet.aspx

Я думаю, что вы создадите Список людей (OU), и как только у вас будет такой Список, очень просто создать функцию для проверки Списка, чтобы увидеть, существует ли конкретный человек.

Следовательно, если человек не существует - CreatePerson ()

В противном случае, если человек существует - UpdatePerson ()

0 голосов
/ 05 марта 2009

спасибо JaredPar за ответ. дайте мне пример кода в vb.net. Я не смог найти пример кода.

при создании кода с кодом выше Попробуйте

                objOU = objADAM.Children.Add(strOU, "OrganizationalUnit")
                objOU.Properties("description").Add(dr.GetValue(2).ToString)
                objOU.CommitChanges()

            Catch de As Exception
                Console.WriteLine("Error:   Create failed.")
                Console.WriteLine("         {0}", de.Message)
                Return
            End Try
0 голосов
/ 05 марта 2009

Посмотрите на пространство имен System.DirectoryServices.AccountManagement . Вы также можете посмотреть пример приложения Account Management . Чтобы проверить OU, вы можете использовать System.DirectoryServices , чтобы создать экземпляр DirectoryEntry на основе пути OU (или поисковика, чтобы найти его). Если он не существует, вам нужно получить объект DirectoryEntry для родительского подразделения и затем создать новый OrganizationUnit, используя Invoke для вызова метода создания ADSI.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...