ActiveDirectoryMembershipProvider.FindUsersByName メソッド

定義

ユーザー名に基づいて、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

例外

FindUsersByName(String, Int32, Int32, Int32) インスタンスが初期化される前に ActiveDirectoryMembershipProvider メソッドが呼び出されました。

usernameToMatch が空であるか、ユーザー名の最大長 (通常は 256 文字) を超えています。

- または -

usernameToMatch はコンマを含んでいます。

- または -

pageIndex が 0 未満です。

または

pageSize が 1 未満です。

または

pageSize を乗算し pageIndex、 に を加算 pageSizeし、1 を引いた値は Int32.MaxValue より大きくなります。

usernameToMatchnullです。

EnableSearchMethods プロパティが false です。

注釈

メソッドは FindUsersByName 、パラメーターに MembershipUserCollection 一致するすべてのユーザー名について、Active Directory データ ストアからユーザー レコードを含むインスタンスを userNameToMatch 返します。 レコードは、ユーザー名でアルファベット順に並べ替えられて返されます。

メソッドによってFindUsersByName返される結果は、 パラメーターと pageSize パラメーターによってpageIndex制限されます。 パラメーターは pageSize 、 で返されるインスタンスの MembershipUser 最大数を MembershipUserCollection指定します。 パラメーターは pageIndex 、返す結果のページを指定します。0 (ゼロ) は最初のページを示します。

パラメーターは totalRecordsout Active Directory データ ストアで見つかった一致するメンバーシップ ユーザーの合計数に設定されるパラメーターです。 たとえば、構成されたデータ ストアに 13 人のユーザーがいて、 pageIndex 値が 1 で、 pageSize が 5 の場合、 MembershipUserCollection 返されるには 6 番目から 10 番目のユーザーが含まれます。 パラメーターは totalRecords 13 に設定されます。

membership Element (ASP.NET Settings Schema) 要素の属性をEnableSearchMethods使用してenableSearchMethods、アプリケーションの構成ファイルで プロパティを設定することで、ユーザーの検索を許可するかどうかを制御できます。 プロパティ値を EnableSearchMethodsfalse 設定すると、メソッドは FindUsersByName 例外を NotSupportedException スローします。

プロバイダーは、接続文字列で指定された検索ポイントから始まるサブツリー検索を使用します。 接続文字列の ActiveDirectoryMembershipProvider 詳細については、クラスのトピックを参照してください。

クラスによって ActiveDirectoryMembershipProvider 発行された検索クエリがディレクトリ サーバーのパフォーマンスに悪影響を与えないことを確認するまで、運用システムでの検索を有効にしないことをお勧めします。 ActiveDirectoryMembershipProviderクラスはステートレス Web 環境用に設計されているため、基になる System.DirectoryServices API によって公開されるページングの最適化を使用できません。 つまり、大規模なディレクトリに対する検索中のページング操作は非常にコストが高く、回避する必要があります。 検索操作は、接続文字列で構成されているディレクトリ サーバー、またはドメインを指す接続文字列の場合は自動的に選択されたサーバーに対して常に発行されます。 プロバイダーは、その検索方法にグローバル カタログを使用しません。

適用対象

こちらもご覧ください