PersonalizationProvider Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Implementa a funcionalidade básica para um fornecedor de personalização.
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
- Herança
- Derivado
Observações
Esta é a classe base abstrata que define a funcionalidade necessária de um fornecedor de personalização. Um fornecedor de personalização carrega e armazena dados de personalização em nome de uma WebPartPersonalization instância.
A classe base define o comportamento padrão para vários métodos; apenas os métodos que lidam especificamente com o armazenamento de dados subjacente são marcados como abstratos. Isto permite que um programador escreva um fornecedor personalizado para interagir com um armazenamento de dados específico, sem necessidade de reimplementar a funcionalidade padrão usada pela WebPartPersonalization classe.
Notas para Implementadores
Pode derivar e PersonalizationProvider fornecer implementações apenas para os métodos abstratos definidos nesta classe. Os métodos abstratos tratam especificamente do armazenamento e carregamento de dados num armazenamento físico, bem como da administração do armazenamento de dados. Um fornecedor personalizado deve ser capaz de manipular a informação de personalização de forma a distinguir Shared dados de User dados. Além disso, um fornecedor deve segmentar os dados de personalização por página, bem como por aplicação.
As implementações de PersonalizationProvider estão fortemente acopladas às implementações de PersonalizationState porque alguns métodos de fornecedor de personalização retornam instâncias de PersonalizationStateclasses derivadas em . Para facilitar o desenvolvimento de fornecedores personalizados, a PersonalizationProvider classe base inclui uma implementação padrão da lógica de personalização e da lógica de serialização/desserialização que é usada diretamente pela WebPartPersonalization classe. Como resultado, criar um fornecedor personalizado apenas para trabalhar com um armazenamento de dados diferente requer apenas a implementação dos seguintes métodos abstratos:
GetCountOfState(PersonalizationScope, PersonalizationStateQuery) - Este método precisa de ser capaz de contar o número de linhas de dados de personalização na base de dados para os parâmetros de consulta fornecidos.
LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[]) - Dado o caminho e o nome de utilizador, este método carrega dois objetos grandes binários (BLOBs) da base de dados: um BLOB para dados partilhados e outro para dados de utilizador. Se fornecer o nome de utilizador e o caminho, então não precisa do WebPartManager controlo para aceder à informação da página que pode fornecer o nome de utilizador/caminho.
ResetPersonalizationBlob(WebPartManager, String, String) - Dado o caminho e o nome de utilizador, este método elimina a linha correspondente na base de dados. Se fornecer o nome de utilizador e o caminho, então não precisa do WebPartManager controlo para aceder à informação da página que pode fornecer o nome de utilizador/caminho.
SavePersonalizationBlob(WebPartManager, String, String, Byte[]) - Dado o caminho e o nome de utilizador, este método guarda o BLOB fornecido na base de dados. Se fornecer o nome de utilizador e o caminho, então não precisa do WebPartManager controlo para aceder à informação da página que pode fornecer o nome de utilizador/caminho.
Em todos estes métodos, se apenas um caminho for fornecido, isso indica que os dados de personalização partilhados para a página estão a ser operados. Se tanto um caminho como um nome de utilizador forem passados a um método, então os dados de personalização do utilizador para a página devem ser utilizados. No caso de LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[]), os dados partilhados para o caminho especificado devem estar sempre carregados, e opcionalmente os dados de personalização do utilizador para o caminho também devem ser carregados se o nome de utilizador não nullfor .
Todos os outros métodos abstratos destinam-se apenas a aplicações administrativas e não são utilizados pela infraestrutura de Web Parts em tempo de execução. Para um exemplo de implementação de um fornecedor de personalização, veja a SqlPersonalizationProvider classe.
Construtores
| Name | Description |
|---|---|
| PersonalizationProvider() |
Inicializa uma nova instância da PersonalizationProvider classe. |
Propriedades
| Name | Description |
|---|---|
| ApplicationName |
Quando sobrescrito numa classe derivada, recebe ou define o nome da aplicação configurada para o fornecedor. |
| Description |
Recebe uma descrição breve e amigável, adequada para exibição em ferramentas administrativas ou outras interfaces de utilizador (UIs). (Herdado de ProviderBase) |
| Name |
Recebe o nome amigável usado para se referir ao fornecedor durante a configuração. (Herdado de ProviderBase) |
Métodos
| Name | Description |
|---|---|
| CreateSupportedUserCapabilities() |
Devolve uma lista de WebPartUserCapability objetos que representam o conjunto de capacidades conhecidas usadas pelo conjunto de controlo Web Parts. |
| DetermineInitialScope(WebPartManager, PersonalizationState) |
Determina se o âmbito inicial da personalização deve ser Shared ou User o âmbito. |
| DetermineUserCapabilities(WebPartManager) |
Devolve um dicionário contendo WebPartUserCapability instâncias que representam as capacidades relacionadas com personalização da conta de utilizador atualmente em execução. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| FindState(PersonalizationScope, PersonalizationStateQuery, Int32, Int32, Int32) |
Quando sobrescrito numa classe derivada, devolve uma coleção contendo zero ou mais PersonalizationStateInfoobjetos derivados com base no âmbito e nos parâmetros específicos da consulta. |
| GetCountOfState(PersonalizationScope, PersonalizationStateQuery) |
Quando sobrescrito numa classe derivada, devolve o número de linhas no armazenamento de dados subjacente que existem dentro do âmbito especificado. |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| Initialize(String, NameValueCollection) |
Inicializa o construtor de configuração. (Herdado de ProviderBase) |
| LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[]) |
Quando sobreposto numa classe derivada, carrega dados brutos de personalização do armazenamento subjacente. |
| LoadPersonalizationState(WebPartManager, Boolean) |
Carrega os dados brutos do armazenamento subjacente e converte esses dados num PersonalizationState objeto. |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ResetPersonalizationBlob(WebPartManager, String, String) |
Quando sobreposto numa classe derivada, elimina os dados brutos de personalização do armazenamento subjacente. |
| ResetPersonalizationState(WebPartManager) |
Reinicia os dados de personalização para o armazenamento de dados subjacente. |
| ResetState(PersonalizationScope, String[], String[]) |
Quando sobreposto numa classe derivada, elimina o estado de personalização do armazenamento de dados subjacente com base nos parâmetros especificados. |
| ResetUserState(String, DateTime) |
Quando sobreposto numa classe derivada, elimina os dados de personalização de Web Parts do armazenamento subjacente com base nos parâmetros especificados. |
| SavePersonalizationBlob(WebPartManager, String, String, Byte[]) |
Quando sobrescrito numa classe derivada, guarda os dados brutos de personalização para o armazenamento de dados subjacente. |
| SavePersonalizationState(PersonalizationState) |
Guarda os dados de personalização para um armazenamento de dados. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |