PersonalizationProvider 類別

定義

實作個人化提供者的基本功能。

public ref class PersonalizationProvider abstract : System::Configuration::Provider::ProviderBase
public abstract class PersonalizationProvider : System.Configuration.Provider.ProviderBase
type PersonalizationProvider = class
    inherit ProviderBase
Public MustInherit Class PersonalizationProvider
Inherits ProviderBase
繼承
PersonalizationProvider
衍生

備註

這是定義個人化提供者所需功能的抽象基類。 個人化提供者會代表 WebPartPersonalization 實例載入和儲存個人化資料。

基類會定義許多方法的標準行為;只有特別處理基礎資料存放區的方法會標示為抽象。 這可讓開發人員撰寫自訂提供者來與特定資料存放區互動,而不需要重新實作 WebPartPersonalization 類別所使用的標準功能。

給實施者的注意事項

您可以衍生自 PersonalizationProvider ,並只針對這個類別中定義的抽象方法提供實作。 抽象方法會特別處理將資料儲存和載入實體資料存放區,以及資料存放區管理。 自訂提供者必須能夠以區分 Shared 資料與 User 資料的方式操作個人化資訊。 此外,提供者必須依頁面和應用程式分割個人化資料。

PersonalizationProvider 實作與 實 PersonalizationState 作緊密結合,因為某些個人化提供者方法會傳回 衍生類別的 PersonalizationState 實例。 為了簡化自訂提供者的開發, PersonalizationProvider 基類包含個人化邏輯的預設實作,以及類別直接 WebPartPersonalization 使用的序列化/還原序列化邏輯。 因此,只為了使用不同的資料存放區來撰寫自訂提供者,只需要實作下列抽象方法:

在所有這些方法中,如果只提供路徑,表示正在動作頁面的共用個人化資料。 如果路徑和使用者名稱都傳遞至方法,則應該處理頁面的使用者個人化資料。 LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[])如果是 ,則應該一律載入指定路徑的共用資料,如果使用者名稱不是 null ,則也應該載入路徑的使用者個人化資料。

所有其他抽象方法僅供系統管理應用程式使用,而且不會在執行時間由 Web 元件基礎結構使用。 如需個人化提供者實作的範例,請參閱 類別 SqlPersonalizationProvider

建構函式

PersonalizationProvider()

初始化 PersonalizationProvider 類別的新執行個體。

屬性

ApplicationName

在衍生類別中覆寫時,取得或設定為提供者設定的應用程式名稱。

Description

取得簡短、易讀的描述,適合顯示在管理工具或其他使用者介面 (UI) 中。

(繼承來源 ProviderBase)
Name

取得用來在設定期間代表提供者的易記名稱。

(繼承來源 ProviderBase)

方法

CreateSupportedUserCapabilities()

傳回 WebPartUserCapability 物件清單,表示 Web 組件控制集使用的一組已知能力。

DetermineInitialScope(WebPartManager, PersonalizationState)

決定初始個人化範圍應當是 Shared 還是 User 範圍。

DetermineUserCapabilities(WebPartManager)

傳回包含 WebPartUserCapability 執行個體的字典,表示目前執行之使用者帳戶的個人化相關能力。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
FindState(PersonalizationScope, PersonalizationStateQuery, Int32, Int32, Int32)

在衍生類別中覆寫時,根據範圍和特定查詢參數,傳回包含零或多個 PersonalizationStateInfo 衍生物件的集合。

GetCountOfState(PersonalizationScope, PersonalizationStateQuery)

在衍生類別中覆寫時,會傳回特定範圍內存在的基礎資料存放區中的資料列數目。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
Initialize(String, NameValueCollection)

初始化設定產生器。

(繼承來源 ProviderBase)
LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[])

在衍生類別中覆寫時,會載入基礎資料存放區中未經處理的個人化資料。

LoadPersonalizationState(WebPartManager, Boolean)

從基礎資料存放區載入未經處理的資料,並將該資料轉換成 PersonalizationState 物件。

MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ResetPersonalizationBlob(WebPartManager, String, String)

在衍生類別中覆寫時,會刪除基礎資料存放區中未經處理的個人化資料。

ResetPersonalizationState(WebPartManager)

將個人化資料重設至基礎資料存放區。

ResetState(PersonalizationScope, String[], String[])

在衍生類別中覆寫時,會根據指定的參數,刪除基礎資料存放區中的個人化狀態。

ResetUserState(String, DateTime)

在衍生類別中覆寫時,會根據指定的參數,刪除基礎資料存放區中的 Web 組件個人化資料。

SavePersonalizationBlob(WebPartManager, String, String, Byte[])

在衍生類別中覆寫時,會將未經處理的個人化資料儲存至基礎資料存放區。

SavePersonalizationState(PersonalizationState)

將個人化資料儲存至資料存放區。

ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

適用於

另請參閱