我有一个名为“windgrp”的Windows组,其中有三个成员:
我有这段代码来显示组中的成员:
using (DirectoryEntry groupEntry =
new DirectoryEntry("WinNT://./" + userGroupName + ",group"))
{
foreach (object member in (IEnumerable)groupEntry.Invoke("Members"))
{
using (DirectoryEntry memberEntry = new DirectoryEntry(member))
{
listbox.itms.add(memberentry.name);
}
}
}
这给了我结果:
它不告诉我第二个条目属于哪个域。
如何获取域名?
答案 0 :(得分:1)
您需要走上对象的层次结构。因此,如果你有你的用户,你可以从那里开始递归,寻找满足你的搜索条件的模式类。
public DirectoryEntry FindDomain(DirectoryEntry memberEntry)
{
if(memberEntry.SchemaClassName.ToLower().Contains("domain")
{
return memberEntry;
}
if(memberEntry.Parent !=null)
{
return FindDomain(memberEntry.Parent);
}
return null;
}