4
我使用以下代碼查詢公司LDAP列表。問題是它寫出完整的字符串。除了字符串解析之外,是否有簡單的方法來寫出組名?Active Directory組枚舉
using System;
using System.Collections.Generic;
using System.DirectoryServices;
using System.Linq;
public class Test
{
public static void Main()
{
string userName = "USER";
DirectoryEntry directoryEntry = new DirectoryEntry("LDAP://dc=ABC,dc=com");
DirectorySearcher search = new DirectorySearcher();
search.Filter = String.Format("(cn={0})", userName);
search.PropertiesToLoad.Add("memberOf");
List<string> groupsList = new List<string>();
SearchResult result = search.FindOne();
if (result != null)
{
int groupCount = result.Properties["memberOf"].Count;
for (int counter = 0; counter < groupCount; counter++)
{
groupsList.Add((string)result.Properties["memberOf"][counter]);
}
}
List<string> list = new List<string>();
list = groupsList.ToList();
for (int i = 0; i < list.Count; i++)
{
Console.WriteLine(list[i]);
}
}
}
PrincipalCOntext需要訪問命名空間AccountManagement - 我沒有。 –
你正在使用哪個.Net版本? AccountManagement是.Net 3.5,如果我沒有弄錯的話。 –
我使用的是v4.0.30319。 –