PersonalizationProvider Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Implémente les fonctionnalités de base destinées à un fournisseur de personnalisations.
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
- Héritage
- Dérivé
Remarques
Il s’agit de la classe de base abstraite qui définit les fonctionnalités requises d’un fournisseur de personnalisation. Un fournisseur de personnalisation charge et stocke les données de personnalisation pour le compte d’une WebPartPersonalization instance.
La classe de base définit le comportement standard pour un certain nombre de méthodes ; seules les méthodes qui traitent spécifiquement le magasin de données sous-jacent sont marquées comme abstraites. Cela permet à un développeur d’écrire un fournisseur personnalisé pour interagir avec un magasin de données spécifique, sans avoir à réinscrire les fonctionnalités standard utilisées par la WebPartPersonalization classe .
Notes pour les responsables de l’implémentation
Vous pouvez dériver de PersonalizationProvider et fournir des implémentations uniquement pour les méthodes abstraites définies dans cette classe. Les méthodes abstraites traitent spécifiquement de l’enregistrement et du chargement des données dans un magasin de données physique, ainsi que de l’administration des magasins de données. Un fournisseur personnalisé doit être capable de manipuler les informations de personnalisation d’une manière qui distingue les Shared données des User données. En outre, un fournisseur doit segmenter les données de personnalisation par page et par application.
Les implémentations de PersonalizationProvider sont étroitement couplées aux implémentations de, PersonalizationState car certaines méthodes de fournisseur de personnalisation retournent des instances de PersonalizationStateclasses dérivées. Pour faciliter le développement de fournisseurs personnalisés, la PersonalizationProvider classe de base inclut une implémentation par défaut de la logique de personnalisation et de la logique de sérialisation/désérialisation qui est utilisée directement par la WebPartPersonalization classe . Par conséquent, la création d’un fournisseur personnalisé uniquement dans le but d’utiliser un magasin de données différent nécessite uniquement l’implémentation des méthodes abstraites suivantes :
GetCountOfState(PersonalizationScope, PersonalizationStateQuery) - Cette méthode doit être en mesure de compter le nombre de lignes de données de personnalisation dans la base de données pour les paramètres de requête fournis.
LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[]) - Étant donné le chemin d’accès et le nom d’utilisateur, cette méthode charge deux objets blob binaires à partir de la base de données : un objet BLOB pour les données partagées et un autre pour les données utilisateur. Si vous fournissez le nom d’utilisateur et le chemin d’accès, vous n’avez pas besoin du WebPartManager contrôle pour accéder aux informations de page qui peuvent fournir les informations de nom d’utilisateur/chemin d’accès.
ResetPersonalizationBlob(WebPartManager, String, String) - Compte tenu du chemin d’accès et du nom d’utilisateur, cette méthode supprime la ligne correspondante dans la base de données. Si vous fournissez le nom d’utilisateur et le chemin d’accès, vous n’avez pas besoin du WebPartManager contrôle pour accéder aux informations de page qui peuvent fournir les informations de nom d’utilisateur/chemin d’accès.
SavePersonalizationBlob(WebPartManager, String, String, Byte[]) - Étant donné le chemin d’accès et le nom d’utilisateur, cette méthode enregistre l’objet BLOB fourni dans la base de données. Si vous fournissez le nom d’utilisateur et le chemin d’accès, vous n’avez pas besoin du WebPartManager contrôle pour accéder aux informations de page qui peuvent fournir les informations de nom d’utilisateur/chemin d’accès.
Dans toutes ces méthodes, si seul un chemin d’accès est fourni, cela indique que les données de personnalisation partagées pour la page sont exploitées. Si un chemin d’accès et un nom d’utilisateur sont passés à une méthode, les données de personnalisation de l’utilisateur pour la page doivent être mises en place. Dans le cas de LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[]), les données partagées pour le chemin spécifié doivent toujours être chargées, et éventuellement les données de personnalisation utilisateur pour le chemin d’accès doivent également être chargées si le nom d’utilisateur n’est pas null
.
Toutes les autres méthodes abstraites sont destinées à être utilisées uniquement dans les applications administratives et ne sont pas utilisées par l’infrastructure de composants WebPart au moment de l’exécution. Pour obtenir un exemple d’implémentation d’un fournisseur de personnalisation, consultez la SqlPersonalizationProvider classe .
Constructeurs
PersonalizationProvider() |
Initialise une nouvelle instance de la classe PersonalizationProvider. |
Propriétés
ApplicationName |
En cas de substitution dans une classe dérivée, obtient ou définit le nom de l'application configurée pour le fournisseur. |
Description |
Obtient une description brève et conviviale qui peut s'afficher dans les outils d'administration ou d'autres interfaces utilisateur. (Hérité de ProviderBase) |
Name |
Obtient le nom convivial qui référence le fournisseur au cours de la configuration. (Hérité de ProviderBase) |
Méthodes
CreateSupportedUserCapabilities() |
Retourne une liste des objets WebPartUserCapability qui représentent le jeu des fonctionnalités connues utilisées par le jeu de contrôles WebPart. |
DetermineInitialScope(WebPartManager, PersonalizationState) |
Détermine si la portée de personnalisation initiale doit être une portée Shared ou User. |
DetermineUserCapabilities(WebPartManager) |
Retourne un dictionnaire qui contient des instances de WebPartUserCapability représentant les fonctionnalités liées à la personnalisation dont dispose le compte d'utilisateur actif. |
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
FindState(PersonalizationScope, PersonalizationStateQuery, Int32, Int32, Int32) |
En cas de substitution dans une classe dérivée, retourne une collection qui contient un nombre d'objets dérivés de PersonalizationStateInfo supérieur ou égal à zéro, selon des paramètres de portée et des paramètres spécifiques à la requête. |
GetCountOfState(PersonalizationScope, PersonalizationStateQuery) |
En cas de substitution dans une classe dérivée, retourne le nombre de lignes présentes dans le magasin de données sous-jacent également présentes dans la portée spécifiée. |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
Initialize(String, NameValueCollection) |
Initialise le générateur de configuration. (Hérité de ProviderBase) |
LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[]) |
En cas de substitution dans une classe dérivée, charge des données de personnalisation brutes à partir du magasin de données sous-jacent. |
LoadPersonalizationState(WebPartManager, Boolean) |
Charge les données brutes du magasin de données sous-jacent et convertit ces données en un objet PersonalizationState. |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
ResetPersonalizationBlob(WebPartManager, String, String) |
En cas de substitution dans une classe dérivée, supprime des données de personnalisation brutes à partir du magasin de données sous-jacent. |
ResetPersonalizationState(WebPartManager) |
Réinitialise des données de personnalisation destinées au magasin de données sous-jacent. |
ResetState(PersonalizationScope, String[], String[]) |
En cas de substitution dans une classe dérivée, supprime l'état de personnalisation issu du magasin de données sous-jacent selon les paramètres spécifiés. |
ResetUserState(String, DateTime) |
En cas de substitution dans une classe dérivée, supprime des données de personnalisation WebPart issues du magasin de données sous-jacent selon les paramètres spécifiés. |
SavePersonalizationBlob(WebPartManager, String, String, Byte[]) |
En cas de substitution dans une classe dérivée, enregistre des données de personnalisation brutes dans le magasin de données sous-jacent. |
SavePersonalizationState(PersonalizationState) |
Enregistre des données de personnalisation dans un magasin de données. |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |