Я пытаюсь обновить пользователя в Active Directory, используя MVC C# LDAP, если пользователь уже находится в группах, я сначала удаляю его из группы и снова добавляю, используя контекст участника. Я попытался зафиксировать изменения в конце моего удаления l oop, но это не помогло
Вот мой код удаления кода:
PropertyValueCollection groups = result.GetDirectoryEntry().Properties["memberOf"];
if (groups != null)
{
for (int i = 0; i < groups.Count; i++)
{
string groupDn = (string)groups[i];
DirectoryEntry group = new DirectoryEntry("LDAP://" + groupDn, null, null);
if (group != null)
{
group.Invoke("Remove", new object[] { result.Path });
}
group.CommitChanges();
}
}
код для добавления пользователя в группы
//DirectoryEntry dirEntry = new DirectoryEntry(groupDirectoryEntry);
using (PrincipalContext pc = new PrincipalContext(ContextType.Domain, AD_Address))// "10.125.153.30"))
{
foreach (var rights in accessGroupList)
{
GroupPrincipal group = GroupPrincipal.FindByIdentity(pc, rights);
group.Members.Add(pc, IdentityType.UserPrincipalName, model.validPersalNumber); //this is where is failes
group.Save();
}
}