3人以上のユーザーのActiveDirectoryグループを比較していますが、プログラムを実行する前に比較するユーザーの数がわかりません。私が最終的にやろうとしているのは、比較しているユーザー間で類似しているActive Directoryグループのリストと、ユーザーの類似していないグループのリストを取得することです。また、類似していないグループにどのユーザーが割り当てられているかを確認できるようにしたいので、比較に別の問題が追加されます。これが私がこれまでに持っているコードです。基本的に、これはすべてのユーザーに対してforeachですが、すべてを比較する方法だけでなく、比較する前にすべてのIEnumerableオブジェクトを格納する方法に固執しています。
using (PrincipalContext principalContext = new PrincipalContext(ContextType.Domain, "Domain"))
{
using (PrincipalSearchResult<Principal> user = UserPrincipal.FindByIdentity(principalContext, userName))
{
return user.GetGroups();
}
}
ユーザーの数がわからないので、グループを格納するために作成する必要のあるIenumerableの数はわかりません。ましてや、すべてを比較することはできません。
どんな助けでも大歓迎です。ハッシュセットを使用してみましたが、これを行ったときに、グループの割り当てとともにユーザーのプロパティを保持する方法がわかりませんでした。