1

C# で LDAP クエリを作成するための厳密に型指定された言語を知っている人はいますか? から離れたい

(&(|(objectClass=user)(objectClass=group)(objectClass=computer)(objectClass=contact))((objectGUID={0})))

できれば、論理クエリを構築するための流動的な API を用意してください。

4

3 に答える 3

3

Linq to LDAP を試すことができます

ここにチュートリアルがあります

于 2011-10-19T07:39:46.833 に答える
0

http://linqtoad.codeplex.com/は良いものです

于 2011-10-19T07:42:03.023 に答える
0

.NET 3.5 以降を使用している場合は、System.DirectoryServices.AccountManagement(S.DS.AM) 名前空間も確認できます。

ここでそれについてすべて読んでください:

基本的に、ドメイン コンテキストを定義し、AD でユーザーやグループを簡単に見つけることができます。

// set up domain context
PrincipalContext ctx = new PrincipalContext(ContextType.Domain);

// find a user
UserPrincipal user = UserPrincipal.FindByIdentity(ctx, "SomeUserName");

if(user != null)
{
   // do something here....     
}

// find the group in question
GroupPrincipal group = GroupPrincipal.FindByIdentity(ctx, "YourGroupNameHere");

// if found....
if (group != null)
{
   // iterate over members
   foreach (Principal p in group.GetMembers())
   {
      Console.WriteLine("{0}: {1}", p.StructuralObjectClass, p.DisplayName);
      // do whatever you need to do to those members
   }
}

新しい S.DS.AM を使用すると、AD でユーザーやグループを簡単に操作できます。DirectoryEntry以前のアプローチよりもはるかに簡単です...

于 2011-10-19T08:32:53.017 に答える