語言

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 Parts 基礎架構在執行時不會使用。 關於個人化提供者實作的範例,請參見類別。SqlPersonalizationProvider

建構函式

名稱 Description
PersonalizationProvider()

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

屬性

名稱 Description
ApplicationName

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

Description

取得簡短且易記的描述,適合顯示在系統管理工具或其他使用者介面中。

(繼承來源 ProviderBase)
Name

取得組態期間用來參考提供者的易記名稱。

(繼承來源 ProviderBase)

方法

名稱 Description
CreateSupportedUserCapabilities()

回傳一個物件清單 WebPartUserCapability ,代表 Web Parts 控制集所使用的已知能力集合。

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 Parts 個人化資料。

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

當在衍生類別中覆寫時,會將原始個人化資料儲存到底層資料庫。

SavePersonalizationState(PersonalizationState)

將個人化資料儲存到資料庫。

ToString()

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

(繼承來源 Object)

適用於

另請參閱