Compartir a través de


PersonalizationProvider Clase

Definición

Implementa la funcionalidad básica para un proveedor de personalización.

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
Herencia
PersonalizationProvider
Derivado

Comentarios

Esta es la clase base abstracta que define la funcionalidad necesaria de un proveedor de personalización. Un proveedor de personalización carga y almacena los datos de personalización en nombre de una WebPartPersonalization instancia.

La clase base define el comportamiento estándar para una serie de métodos; solo los métodos que tratan específicamente con el almacén de datos subyacente se marcan como abstractos. Esto permite a un desarrollador escribir un proveedor personalizado para interactuar con un almacén de datos específico, sin necesidad de volver a implementar la funcionalidad estándar usada por la WebPartPersonalization clase .

Notas a los implementadores

Puede derivar y PersonalizationProvider proporcionar implementaciones solo para los métodos abstractos definidos en esta clase. Los métodos abstractos tratan específicamente cómo guardar y cargar datos en un almacén de datos físico y con la administración del almacén de datos. Un proveedor personalizado debe ser capaz de manipular información de personalización de una manera que distinga Shared los datos de los User datos. Además, un proveedor debe segmentar los datos de personalización por página, así como por aplicación.

Las implementaciones de PersonalizationProvider están estrechamente acopladas a las implementaciones de porque algunos métodos de proveedor de PersonalizationState personalización devuelven instancias de clases derivadas de PersonalizationState. Para facilitar el desarrollo de proveedores personalizados, la PersonalizationProvider clase base incluye una implementación predeterminada de la lógica de personalización y la lógica de serialización/deserialización que usa directamente la WebPartPersonalization clase . Como resultado, la creación de un proveedor personalizado únicamente para trabajar con un almacén de datos diferente solo requiere la implementación de los siguientes métodos abstractos:

  • GetCountOfState(PersonalizationScope, PersonalizationStateQuery) : este método debe ser capaz de contar el número de filas de datos de personalización en la base de datos para los parámetros de consulta proporcionados.

  • LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[]) - Dada la ruta de acceso y el nombre de usuario, este método carga dos objetos binarios grandes (BLOB) de la base de datos: un BLOB para datos compartidos y otro para los datos de usuario. Si proporciona el nombre de usuario y la ruta de acceso, no necesita el WebPartManager control para acceder a la información de la página que puede proporcionar la información de nombre de usuario o ruta de acceso.

  • ResetPersonalizationBlob(WebPartManager, String, String) - Dada la ruta de acceso y el nombre de usuario, este método elimina la fila correspondiente de la base de datos. Si proporciona el nombre de usuario y la ruta de acceso, no necesita el WebPartManager control para acceder a la información de la página que puede proporcionar la información de nombre de usuario o ruta de acceso.

  • SavePersonalizationBlob(WebPartManager, String, String, Byte[]) - Dada la ruta de acceso y el nombre de usuario, este método guarda el BLOB proporcionado en la base de datos. Si proporciona el nombre de usuario y la ruta de acceso, no necesita el WebPartManager control para acceder a la información de la página que puede proporcionar la información de nombre de usuario o ruta de acceso.

En todos estos métodos, si solo se proporciona una ruta de acceso, que indica que se están operando los datos de personalización compartidos de la página. Si se pasa una ruta de acceso y un nombre de usuario a un método, se deben actuar los datos de personalización del usuario de la página. En el caso de LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[]), los datos compartidos de la ruta de acceso especificada siempre deben cargarse y, opcionalmente, los datos de personalización del usuario para la ruta de acceso también deben cargarse si el nombre de usuario no nulles .

Todos los demás métodos abstractos están diseñados para su uso solo en aplicaciones administrativas y no se usan en la infraestructura de elementos web en tiempo de ejecución. Para obtener un ejemplo de una implementación de un proveedor de personalización, consulte la SqlPersonalizationProvider clase .

Constructores

PersonalizationProvider()

Inicializa una nueva instancia de la clase PersonalizationProvider.

Propiedades

ApplicationName

Cuando se reemplaza en una clase derivada, obtiene o establece el nombre de la aplicación configurada para el proveedor.

Description

Obtiene una descripción breve y fácil de comprender apropiada para mostrarla en las herramientas administrativas u otras interfaces de usuario.

(Heredado de ProviderBase)
Name

Obtiene el nombre descriptivo utilizado para hacer referencia al proveedor durante la configuración.

(Heredado de ProviderBase)

Métodos

CreateSupportedUserCapabilities()

Devuelve una lista de objetos WebPartUserCapability que representan el conjunto de funciones conocidas utilizada por el conjunto de controles de elementos Web.

DetermineInitialScope(WebPartManager, PersonalizationState)

Determina si el ámbito de personalización inicial debe ser Shared o User.

DetermineUserCapabilities(WebPartManager)

Devuelve un diccionario que contiene instancias de WebPartUserCapability que representan funciones relacionadas con personalización de la cuenta de usuario actualmente en ejecución.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
FindState(PersonalizationScope, PersonalizationStateQuery, Int32, Int32, Int32)

Cuando se reemplaza en una clase derivada, devuelve una colección que contiene cero o más objetos derivados de PersonalizationStateInfo en función del ámbito y los parámetros de consulta específicos.

GetCountOfState(PersonalizationScope, PersonalizationStateQuery)

Cuando se reemplaza en una clase derivada, devuelve el número de filas del almacén de datos subyacente que existen dentro del ámbito especificado.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
Initialize(String, NameValueCollection)

Inicializa el generador de configuración.

(Heredado de ProviderBase)
LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[])

Cuando se reemplaza en una clase derivada, carga datos de personalización sin procesar del almacén de datos subyacente.

LoadPersonalizationState(WebPartManager, Boolean)

Carga los datos sin procesar del almacén de datos subyacente y convierte esos datos en un objeto PersonalizationState.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ResetPersonalizationBlob(WebPartManager, String, String)

Cuando se reemplaza en una clase derivada, elimina datos de personalización sin procesar del almacén de datos subyacente.

ResetPersonalizationState(WebPartManager)

Restablece los datos de personalización en el almacén de datos subyacente.

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

Cuando se reemplaza en una clase derivada, elimina el estado de personalización del almacén de datos subyacente en función de los parámetros especificados.

ResetUserState(String, DateTime)

Cuando se reemplaza en una clase derivada, elimina los datos de personalización de elementos Web del almacén de datos subyacente en función de los parámetros especificados.

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

Cuando se reemplaza en una clase derivada, guarda datos de personalización sin procesar en el almacén de datos subyacente.

SavePersonalizationState(PersonalizationState)

Guarda los datos de personalización en un almacén de datos.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también