8.1.5.2 GetCountOfState

このメソッドは、指定されたスコープ内の基礎となるOracleデータベース内の行数を戻します。

宣言

// C#
public override int GetCountOfState(PersonalizationScope scope,
   PersonalizationStateQuery query);

パラメータ

  • scope

    パーソナライズ情報の問合せのスコープ(ユーザーまたは共有)。これはnull参照にできません。

  • query

    パーソナライズ情報のフィルタ処理に使用する問合せ。これはnull参照にできます。

戻り値

指定されたスコープ・パラメータ内の基礎となるデータ・ソースの行数。

例外

ArgumentException - queryPathToMatchまたはUsernameToMatchプロパティがnull以外の参照であり、切り捨て後に空の文字列("")になります。

ArgumentOutOfRangeException - 指定されたスコープは、PersonalizationScope列挙の有効値ではありません。

OracleException - Oracle関連のエラーが発生しました。

備考

このメソッドは、問合せワイルドカード文字を基礎となるOracleデータベースに渡します。データベースは、queryパラメータのPathToMatchプロパティ内の検索文字列テキストの先頭、末尾または途中に出現したワイルドカード文字で部分的なパスのワイルドカード検索を実行します。たとえば、PathToMatchプロパティを~/appdir%に設定すると、~/appdirで始まるすべてのパスが見つかります。

同様に、部分的なユーザー名のワイルドカード検索では、ワイルドカード文字がqueryパラメータのUsernameToMatchプロパティのテキスト文字列のどのポイントに出現してもかまいません。たとえば、scottから始まるすべてのユーザー名を検索するには、UsernameToMatchパラメータはscott%のようになります

次の問合せ制約に従う必要があります。

  • scopeパラメータのみ指定され、queryパラメータがnull参照であるか、queryパラメータのすべてのプロパティがnull参照またはデフォルト値を戻す場合は、指定されたscopeパラメータに一致するすべてのレコードが戻されます。

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

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

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