Active Directory group search C#
本文关键字:search group Directory Active | 更新日期: 2023-09-27 18:27:50
我正在查找一个域下的组,以查看用户输入的组是否有效。我已经和几个小组核实过了。它运行良好。但有一个组在域中(我可以从AD中看到它),但仍然不符合我的代码条件。
如果我遗漏了什么,你能复习一下吗?
PrincipalContext ctx = new PrincipalContext(ContextType.Domain, "mydomain");
GroupPrincipal qbeGroup = new GroupPrincipal(ctx);
PrincipalSearcher srch = new PrincipalSearcher(qbeGroup);
IsValidGroup = 0;
foreach (var found in srch.FindAll())
{
if (found.ToString() == TxtAccName.Text)
{
IsValidGroup = 1;
break;
}
}
您实际上已经掌握了精髓。但是你的代码不可行。试试下面,让我知道。
bool groupExists;
using( var ctx = new PrincipalContext(ContextType.Domain, "mydomain") )
{
var filter = new GroupPrincipal(ctx) { Name = TxtAccName.Text }
using ( var searcher = new PrincipalSearcher(filter) )
{
groupExists = searcher.FindAll().Any();
}
}