0

PrincipalSearcher を使用して一致しないすべてのレコードを検索する方法はありますか。DirectorySearcher を使用すると、 のようなフィルターを適用できます(!sn="\*Jay\*")。つまり、姓のどこにもシーケンス「Jay」が含まれていないすべてのレコード。UserPrincipal パラメーターを使用してこれを行う方法があるかどうか疑問に思っていました。

4

2 に答える 2

0

残念ながら、これはオプションではありません。より高度な検索を簡単かつ効率的に行う方法を見つけるのにかなりの時間を費やしました。高度な検索に最も近いのは、いくつかの日付オプションを使用することですが、テキスト検索には何もありません.

私がやったことは、LDAPクエリを使用してDirectorySearcherを個別に実行することです。検索から返される唯一の属性 (結果セットのサイズを最小化し、速度を向上させるため) は、DN とオブジェクト タイプです (オブジェクト タイプがまだフィルタリングされていない場合)。次に、DN を使用して適切なタイプの新しいプリンシパル オブジェクトを作成し、それをコレクションに追加します。

AccountManagement ライブラリ全体は、(明らかに) 非常に小さな一連のタスクを念頭に置いて設計されており、拡張するのは非常に困難です。私はほとんどのタスクで DirectoryServices を使用することにかなり戻りました。これは実際に使用する必要があるライブラリだからです。

于 2013-01-13T21:48:49.637 に答える