LINQ to Active Directory は、Active Directory 内のオブジェクトのクエリを実行できるカスタム LINQ クエリ プロバイダーを実装します。内部的に、クエリは LDAP フィルターに変換され、System.DirectoryServices .NET Framework ライブラリを使用してサーバーに送信されます。
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();