PersonalizationProvider.FindState 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
在衍生類別中覆寫時,根據範圍和特定查詢參數,傳回包含零或多個 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
。
PersonalizationStateQuery,含有查詢。 這個值可以是 null
。
- pageIndex
- Int32
查詢的起始位置。
- pageSize
- Int32
要傳回的資料錄數。
- totalRecords
- Int32
可用的資料錄總數。
傳回
PersonalizationStateInfoCollection,含有零或多個 PersonalizationStateInfo 衍生物件。
備註
此方法是用於查詢個人化資料的系統管理方法抽象定義。 衍生實作應遵循下面所述的邏輯。
傳回的專案集受限於 pageIndex
和 pageSize
參數,其中 pageSize
會設定要傳回的記錄數目,並 pageIndex
設定要傳回的記錄。 例如, pageIndex
0 和 pageSize
25 的 會傳回前 25 個出現次數,而 pageIndex
1 和 25 的 則會 pageSize
傳回 26-50 次。 如果您想要擷取所有可用的記錄,請將 設定 pageIndex
為 0,並將 pageSize
設定為 MaxValue 。
PersonalizationStateInfo衍生物件會依字母順序傳回,並以其 Path 和 Username 屬性值的組合排序,以遞增順序排序。
此方法會將查詢萬用字元傳遞至基礎資料存放區。 萬用字元的支援目前取決於每個提供者如何處理星號 (*) 、百分比符號 () %) 或底線 (_) 。
一般而言,針對符合 SQL 規範的資料存放區,您可以在部分路徑上執行萬用字元搜尋,其中萬用字元會出現在 屬性的 PathToMatch 開頭、結尾或搜尋字串文字中間。 例如,若要尋找以 「~/vdir」 開頭的所有路徑, PathToMatch 屬性會設定為 「~/vdir%」。
同樣地,部分使用者名稱上的萬用字元搜尋可能會讓萬用字元出現在屬性的文字字串 UsernameToMatch 中的任何一點。 例如,若要尋找開頭為 「John」 的所有使用者名稱, UsernameToMatch 參數看起來會像 「John%」。
下列查詢準則約束適用:
如果只
scope
提供 ,而且query
是null
或 傳回null
預設值的所有query
屬性,則會傳回符合指定scope
參數的所有記錄。PathToMatch如果 屬性不是
null
,則傳回的記錄也會根據符合 PathToMatch 值的路徑進行篩選。UsernameToMatch如果 屬性不是
null
,則傳回的記錄也會根據符合 UsernameToMatch 屬性值的使用者名稱進行篩選。UserInactiveSinceDate如果 屬性不等於 MaxValue ,則會篩選傳回的記錄,只傳回與非使用中使用者相關聯的記錄。 比較包含屬性小於或等於 屬性的 UserInactiveSinceDate 記錄 LastActivityDate 。
請注意,此方法不會驗證查詢參數的組合。 例如,程式碼可以要求一組與共享範圍中特定使用者名稱相關聯的個人化狀態記錄。 因為使用者名稱與共享資訊沒有關聯,所以傳回的集合會是空的。
可能傳回非空白集合的參數組合包括:
Shared 範圍與 PathToMatch 屬性結合。
User 範圍與任何或所有 PathToMatch 、 UsernameToMatch 和 UserInactiveSinceDate 屬性的值結合。