我只是想知道是否有人知道或者对Active Directory做了一个包装,以便能够在.net中轻松地查询它?有点像"LINQ- to -ActiveDirectory“或一些SQL方言,例如,能够做"SELECT DISTINCT(DEPARTMENT) FROM /Users/SomeOU/AnotherOU”或"SELECT user FROM domain“或诸如此类。
据我所知,可以用"SQLesque“方式查询WMI和IIS,我只是想知道,在Active Directory中是否也可以这样做,而不必学习另一种查询语言(LDAP)?
发布于 2008-09-18 07:57:40
LINQ to Active Directory实现了自定义LINQ查询提供程序,该提供程序允许查询Active Directory中的对象。在内部,查询被转换为使用System.DirectoryServices .NET框架库发送到服务器的LDAP筛选器。
http://www.codeplex.com/LINQtoAD
示例(来自网站):
// NOTE: Entity type definition "User" omitted in sample - see samples in release.
var users = new DirectorySource<User>(ROOT, SearchScope.Subtree);
users.Log = Console.Out;
var res = from usr in users
where usr.FirstName.StartsWith("B") && usr.Office == "2525"
select new { Name = usr.FirstName + " " + usr.LastName, usr.Office, usr.LogonCount };
foreach (var u in res)
{
Console.WriteLine(u);
u.Office = "5252";
u.SetPassword(pwd);
}
users.Update();https://stackoverflow.com/questions/90812
复制相似问题