ActiveDirectoryMembershipProvider.FindUsersByName メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ユーザー名に基づいて、Active Directory データ ストアからユーザーのコレクションを返します。
public:
override System::Web::Security::MembershipUserCollection ^ FindUsersByName(System::String ^ usernameToMatch, int pageIndex, int pageSize, [Runtime::InteropServices::Out] int % totalRecords);
public override System.Web.Security.MembershipUserCollection FindUsersByName(string usernameToMatch, int pageIndex, int pageSize, out int totalRecords);
override this.FindUsersByName : string * int * int * int -> System.Web.Security.MembershipUserCollection
Public Overrides Function FindUsersByName (usernameToMatch As String, pageIndex As Integer, pageSize As Integer, ByRef totalRecords As Integer) As MembershipUserCollection
パラメーター
- usernameToMatch
- String
検索するユーザー名またはユーザー名の一部。
- pageIndex
- Int32
返される結果のページのインデックス。
pageIndex は 0 から始まります。
- pageSize
- Int32
返される結果のページのサイズ。
- totalRecords
- Int32
このメソッドから制御が戻るときに、コレクションに返されたレコードの合計数が格納されます。 このパラメーターは初期化せずに渡されます。
戻り値
pageIndexによって指定されたページから始まるpageSizeMembershipUserインスタンスを含むMembershipUserCollection。
例外
ActiveDirectoryMembershipProvider インスタンスが初期化される前に、FindUsersByName(String, Int32, Int32, Int32) メソッドが呼び出されます。
usernameToMatch が空であるか、ユーザー名の最大長 (通常は 256 文字) を超えています。
-又は-
usernameToMatch にはコンマが含まれています。
-又は-
pageIndex が 0 未満です。
-または
pageSize が 1 未満です。
-又は-
pageSize
pageIndexを乗算し、pageSizeを加算し、1 を引いた値が Int32.MaxValue より大きい。
usernameToMatch は nullです。
EnableSearchMethods プロパティはfalse。
注釈
FindUsersByName メソッドは、userNameToMatch パラメーターと一致するすべてのユーザー名の Active Directory データ ストアのユーザー レコードを含むMembershipUserCollection インスタンスを返します。 レコードは、ユーザー名でアルファベット順に並べ替えられて返されます。
FindUsersByName メソッドによって返される結果は、pageIndexパラメーターとpageSize パラメーターによって制限されます。
pageSize パラメーターは、MembershipUserCollectionで返MembershipUserインスタンスの最大数を指定します。
pageIndex パラメーターは、返す結果のページを指定します。0 (ゼロ) は最初のページを示します。
totalRecords パラメーターは、Active Directory データ ストアで見つかった一致するメンバーシップ ユーザーの合計数に設定されるout パラメーターです。 たとえば、構成されたデータ ストアに 13 人のユーザーがいて、 pageIndex 値が 1 で pageSize が 5 の場合、返される MembershipUserCollection には 6 番目から 10 番目のユーザーが含まれます。
totalRecords パラメーターは 13 に設定されます。
メンバーシップ要素 (ASP.NET Settings Schema) 要素のenableSearchMethods属性を使用して、アプリケーションの構成ファイルで EnableSearchMethods プロパティを設定することで、ユーザーの検索を許可するかどうかを制御できます。
EnableSearchMethodsプロパティ値を false に設定すると、FindUsersByName メソッドはNotSupportedException例外をスローします。
プロバイダーは、接続文字列で指定された検索ポイントから始まるサブツリー検索を使用します。 接続文字列の詳細については、 ActiveDirectoryMembershipProvider クラスのトピックを参照してください。
ActiveDirectoryMembershipProvider クラスによって発行された検索クエリがディレクトリ サーバーのパフォーマンスに悪影響を与えないことを確認するまで、運用システムでの検索を有効にしないことをお勧めします。 ActiveDirectoryMembershipProvider クラスはステートレス Web 環境用に設計されているため、基になるSystem.DirectoryServices API によって公開されるページングの最適化を使用できません。 つまり、大規模なディレクトリに対する検索中のページング操作は非常に高価であり、回避する必要があります。 検索操作は、接続文字列で構成されているディレクトリ サーバー、またはドメインを指す接続文字列の場合は自動的に選択されたサーバーに対して常に発行されます。 プロバイダーは、検索方法にグローバル カタログを使用しません。