次の方法で共有


PersonalizationProvider.FindState メソッド

定義

派生クラスでオーバーライドされると、スコープおよび固有のクエリ パラメーターに基づき 0 個以上の PersonalizationStateInfo 派生オブジェクトが含まれているコレクションを返します。

public:
 abstract System::Web::UI::WebControls::WebParts::PersonalizationStateInfoCollection ^ FindState(System::Web::UI::WebControls::WebParts::PersonalizationScope scope, System::Web::UI::WebControls::WebParts::PersonalizationStateQuery ^ query, int pageIndex, int pageSize, [Runtime::InteropServices::Out] int % totalRecords);
public abstract System.Web.UI.WebControls.WebParts.PersonalizationStateInfoCollection FindState (System.Web.UI.WebControls.WebParts.PersonalizationScope scope, System.Web.UI.WebControls.WebParts.PersonalizationStateQuery query, int pageIndex, int pageSize, out int totalRecords);
abstract member FindState : System.Web.UI.WebControls.WebParts.PersonalizationScope * System.Web.UI.WebControls.WebParts.PersonalizationStateQuery * int * int * int -> System.Web.UI.WebControls.WebParts.PersonalizationStateInfoCollection
Public MustOverride Function FindState (scope As PersonalizationScope, query As PersonalizationStateQuery, pageIndex As Integer, pageSize As Integer, ByRef totalRecords As Integer) As PersonalizationStateInfoCollection

パラメーター

scope
PersonalizationScope

クエリされるパーソナル化情報が存在する PersonalizationScope。 この値を null にすることはできません。

query
PersonalizationStateQuery

クエリを含んでいる PersonalizationStateQuery。 この値は、null の場合もあります。

pageIndex
Int32

クエリが開始される位置。

pageSize
Int32

返されるレコードの数です。

totalRecords
Int32

レコード数の合計。

戻り値

0 個以上の PersonalizationStateInfoCollection 派生オブジェクトを含んでいる PersonalizationStateInfo

注釈

このメソッドは、パーソナル化データのクエリを実行するための管理メソッドの抽象定義です。 派生実装は、以下で説明するロジックに従う必要があります。

返される項目のセットは、 パラメーターと pageSize パラメーターによってpageIndex制限されます。ここでpageSize、返されるレコードの数を設定し、pageIndex返すレコードを設定します。 たとえば、a pageIndex が 0、a pageSize が 25 の場合、最初の 25 回の出現回数が返され、a pageIndex が 1、a pageSize が 25 の場合は 26 から 50 が返されます。 使用可能なすべてのレコードを取得する場合は、 を 0 に、を pageSize に設定pageIndexしますMaxValue

派生オブジェクトは PersonalizationStateInfoアルファベット順に返され、プロパティ Path 値と Username プロパティ値の組み合わせ (両方とも昇順) で並べ替えられます。

このメソッドは、基になるデータ ストアにクエリ ワイルドカード文字を渡します。 ワイルドカード文字のサポートは現在、各プロバイダーがアスタリスク (*)、パーセント記号 (%)、アンダースコア (_) などの文字を処理する方法によって異なります。

通常、SQL 準拠のデータ ストアでは、ワイルドカード文字がプロパティ内の検索文字列テキストの先頭、末尾、または中央に表示される部分パスでワイルドカード検索を PathToMatch 実行できます。 たとえば、"~/vdir" で始まるすべてのパスを検索するには、 プロパティを PathToMatch "~/vdir%" に設定します。

同様に、部分的なユーザー名に対するワイルドカード検索では、 プロパティのテキスト文字列内の任意の時点でワイルドカード文字を UsernameToMatch 表示できます。 たとえば、"John" で始まるすべてのユーザー名を見つけるには、パラメーターは UsernameToMatch "John%" のようになります。

次のクエリ制約が適用されます。

  • のみが scope 指定され query 、 が null または のすべてのプロパティ query が または 既定値を null 返す場合は、指定された scope パラメーターに一致するすべてのレコードが返されます。

  • プロパティが PathToMatch でない null場合、返されるレコードも、値に一致 PathToMatch するパスに基づいてフィルター処理されます。

  • プロパティが UsernameToMatch でない null場合、返されるレコードも、プロパティ値に一致するユーザー名に UsernameToMatch 基づいてフィルター処理されます。

  • プロパティが UserInactiveSinceDate と等しくない MaxValue場合、返されるレコードもフィルター処理され、非アクティブなユーザーに関連付けられているレコードのみが返されます。 比較には、プロパティが LastActivityDate プロパティ以下のレコードが UserInactiveSinceDate 含まれます。

このメソッドは、クエリ パラメーターの組み合わせを検証しないことに注意してください。 たとえば、コードは、共有スコープ内の特定のユーザー名に関連付けられている一連のパーソナル化状態レコードを要求できます。 ユーザー名は共有情報に関連付けられていないため、返されるコレクションは空になります。

空でないコレクションを返す可能性があるパラメーターの組み合わせは次のとおりです。

適用対象