ProfileSection Classe
TOC
Réduire la table des matières
Développer la table des matières
Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

ProfileSection, classe

 

La ProfileSection classe offre un moyen pour accéder par programme et de modifier la profile section d'un fichier de configuration. Cette classe ne peut pas être héritée.

Espace de noms:   System.Web.Configuration
Assembly:  System.Web (dans System.Web.dll)


public sealed class ProfileSection : ConfigurationSection

NomDescription
System_CAPS_pubmethodProfileSection()

Cette API prend en charge l'infrastructure produit et n'est pas destinée à être utilisée directement à partir de votre code. Initialise une nouvelle instance de la classe ProfileSection en utilisant les paramètres par défaut.

NomDescription
System_CAPS_pubpropertyAutomaticSaveEnabled

Obtient ou définit une valeur qui détermine si les modifications apportées aux informations de profil utilisateur sont enregistrées automatiquement lors de la sortie de page.

System_CAPS_pubpropertyCurrentConfiguration

Obtient une référence à un niveau supérieur Configuration instance qui représente la hiérarchie de configuration qui actuel ConfigurationElement instance appartient.(Hérité de ConfigurationElement.)

System_CAPS_pubpropertyDefaultProvider

Obtient ou définit le nom du fournisseur de profils par défaut.

System_CAPS_pubpropertyElementInformation

Obtient un ElementInformation objet qui contient les informations non personnalisables de la ConfigurationElement objet.(Hérité de ConfigurationElement.)

System_CAPS_protpropertyElementProperty

Obtient le ConfigurationElementProperty objet qui représente le ConfigurationElement objet lui-même.(Hérité de ConfigurationElement.)

System_CAPS_pubpropertyEnabled

Obtient ou définit une valeur indiquant si la fonctionnalité de profil ASP.NET est activée.

System_CAPS_pubpropertyInherits

Obtient ou définit une référence de type pour un type personnalisé dérivé ProfileBase.

System_CAPS_protpropertyItem[ConfigurationProperty]

Obtient ou définit une propriété ou un attribut de cet élément de configuration.(Hérité de ConfigurationElement.)

System_CAPS_protpropertyItem[String]

Obtient ou définit une propriété, un attribut ou un élément enfant de cet élément de configuration.(Hérité de ConfigurationElement.)

System_CAPS_pubpropertyLockAllAttributesExcept

Obtient la collection d'attributs verrouillés.(Hérité de ConfigurationElement.)

System_CAPS_pubpropertyLockAllElementsExcept

Obtient la collection d'éléments verrouillés.(Hérité de ConfigurationElement.)

System_CAPS_pubpropertyLockAttributes

Obtient la collection d'attributs verrouillés (Hérité de ConfigurationElement.)

System_CAPS_pubpropertyLockElements

Obtient la collection d'éléments verrouillés.(Hérité de ConfigurationElement.)

System_CAPS_pubpropertyLockItem

Obtient ou définit une valeur indiquant si l'élément est verrouillé.(Hérité de ConfigurationElement.)

System_CAPS_protpropertyProperties

Obtient la collection de propriétés.(Hérité de ConfigurationElement.)

System_CAPS_pubpropertyPropertySettings
System_CAPS_pubpropertyProviders

Obtient une collection d'objets ProviderSettings.

System_CAPS_pubpropertySectionInformation

Obtient un SectionInformation objet qui contient les informations non personnalisables de la ConfigurationSection objet.(Hérité de ConfigurationSection.)

NomDescription
System_CAPS_protmethodDeserializeElement(XmlReader, Boolean)

Lit du XML à partir du fichier de configuration.(Hérité de ConfigurationElement.)

System_CAPS_protmethodDeserializeSection(XmlReader)

Cette API prend en charge l'infrastructure produit et n'est pas destinée à être utilisée directement à partir de votre code. Lit du XML à partir du fichier de configuration.(Hérité de ConfigurationSection.)

System_CAPS_pubmethodEquals(Object)

Compare l'actuel ConfigurationElement instance à l'objet spécifié.(Hérité de ConfigurationElement.)

System_CAPS_pubmethodGetHashCode()

Obtient une valeur unique représentant actuel ConfigurationElement instance.(Hérité de ConfigurationElement.)

System_CAPS_protmethodGetRuntimeObject()

Retourne un objet personnalisé en cas de substitution dans une classe dérivée.(Hérité de ConfigurationSection.)

System_CAPS_pubmethodGetType()

Obtient le Type de l'instance actuelle.(Hérité de Object.)

System_CAPS_protmethodInit()

Définit le ConfigurationElement objet à son état initial.(Hérité de ConfigurationElement.)

System_CAPS_protmethodInitializeDefault()

Utilisé pour initialiser un jeu de valeurs pour le ConfigurationElement objet.(Hérité de ConfigurationElement.)

System_CAPS_protmethodIsModified()

Indique si cet élément de configuration a été modifié depuis son dernier enregistrement ou chargé en cas d'implémentation dans une classe dérivée.(Hérité de ConfigurationSection.)

System_CAPS_pubmethodIsReadOnly()

Obtient une valeur indiquant si le ConfigurationElement objet est en lecture seule.(Hérité de ConfigurationElement.)

System_CAPS_protmethodReset(ConfigurationElement)

Rétablit l'état interne de l'objet ConfigurationElement, y compris les verrouillages et les collections de propriétés.(Hérité de ConfigurationElement.)

System_CAPS_protmethodResetModified()

Réinitialise la valeur de la IsModified méthode false en cas d'implémentation dans une classe dérivée.(Hérité de ConfigurationSection.)

System_CAPS_protmethodSerializeElement(XmlWriter, Boolean)

Écrit le contenu de cet élément de configuration dans le fichier de configuration en cas d'implémentation dans une classe dérivée.(Hérité de ConfigurationElement.)

System_CAPS_protmethodSerializeSection(ConfigurationElement, String, ConfigurationSaveMode)

Cette API prend en charge l'infrastructure produit et n'est pas destinée à être utilisée directement à partir de votre code. Crée une chaîne XML contenant un affichage non fusionné de la ConfigurationSection objet sous la forme d'une section unique à écrire dans un fichier.(Hérité de ConfigurationSection.)

System_CAPS_protmethodSerializeToXmlElement(XmlWriter, String)

Écrit les balises externes de cet élément de configuration dans le fichier de configuration en cas d'implémentation dans une classe dérivée.(Hérité de ConfigurationElement.)

System_CAPS_protmethodSetReadOnly()

Définit le IsReadOnly propriété pour la ConfigurationElement objet et tous ses sous-éléments.(Hérité de ConfigurationElement.)

System_CAPS_protmethodShouldSerializeElementInTargetVersion(ConfigurationElement, String, FrameworkName)

Indique si l'élément spécifié doit être sérialisé lorsque la hiérarchie d'objets de configuration est sérialisée pour la version cible spécifiée de la .NET Framework.(Hérité de ConfigurationSection.)

System_CAPS_protmethodShouldSerializePropertyInTargetVersion(ConfigurationProperty, String, FrameworkName, ConfigurationElement)

Indique si la propriété spécifiée doit être sérialisée lorsque la hiérarchie d'objets de configuration est sérialisée pour la version cible spécifiée de la .NET Framework.(Hérité de ConfigurationSection.)

System_CAPS_protmethodShouldSerializeSectionInTargetVersion(FrameworkName)

Indique si l'actuel ConfigurationSection instance doit être sérialisée lorsque la hiérarchie d'objets de configuration est sérialisée pour la version cible spécifiée de la .NET Framework.(Hérité de ConfigurationSection.)

System_CAPS_pubmethodToString()

Retourne une chaîne qui représente l'objet actuel.(Hérité de Object.)

System_CAPS_protmethodUnmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode)

Modifie le ConfigurationElement objet à supprimer toutes les valeurs qui ne doivent pas être enregistrées.(Hérité de ConfigurationElement.)

La ProfileSection classe offre un moyen pour accéder par programme et de modifier le contenu du fichier de configuration profile section. Le profile section du fichier de configuration spécifie un schéma pour les profils utilisateur. Au moment de l'exécution, le système de compilation ASP.NET utilise les informations spécifiées dans la profile section pour générer une classe appelée ProfileCommon, qui est dérivée de ProfileBase. Le ProfileCommon définition de classe est basée sur les propriétés définies dans la profile section du fichier de configuration. La classe permet d'accéder et modifier les valeurs des profils individuels. Une instance de cette classe est créée pour chaque profil utilisateur, et vous pouvez accéder aux valeurs de profil dans votre code via la HttpContext.Profile propriété. Pour plus d'informations sur les fonctionnalités de profil ajoutées à ASP.NET 2,0, consultez la page ASP.NET Profile Properties Overview.

L'extrait de fichier de configuration suivant montre comment spécifier de façon déclarative les valeurs pour plusieurs propriétés de la ProfileSection classe.

<system.web>
  <profile enabled = "true" 
     defaultProvider="AspNetSqlProfileProvider">
    <providers>
      <add  name="AspNetSqlProfileProvider"
        type="System.Web.Profile.SqlProfileProvider"
        connectionStringName="LocalSqlServer"
        applicationName="/"
        description="Stores and retrieves profile data from the 
local Microsoft SQL Server database" />
    </providers>
    <properties>
      <add name = "FirstName"/>
      <add name = "LastName"/>
      <add name = "FavoriteURLs" type =
        "System.Collection.Specialized.StringCollection, System" 
        serializeAs = "Xml"/>      
      <add name = "ShoppingCart" type = 
        "MyCommerce.ShoppingCart, MyCommerce" 
        serializeAs = "Binary"/>
      <group name = "SiteColors" >
        <add name = "BackGround"/>
        <add name = "SideBar"/>
        <add name = "ForeGroundText"/>
        <add name = "ForeGroundBorders"/>
      </group>
      <group name="Forums">
        <add name = "HasAvatar" type="bool" provider="Forums"/>
        <add name = "LastLogin" type="DateTime" provider="Forums"/>
        <add name = "TotalPosts" type="int" provider="Forums"/>
      </group>
    </properties>
  </profile>
</system.web>

L'exemple de code suivant montre comment utiliser le ProfileSection type.

using System;
using System.Collections;
using System.Collections.Specialized;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Configuration;
using System.Web.Configuration;

namespace Samples.Aspnet.SystemWebConfiguration
{
    // Accesses the System.Web.Configuration.ProfileSection members
    // selected by the user.
    class UsingProfileSection
    {
        public static void Main()
        {
            // Process the System.Web.Configuration.ProfileSectionobject.
            try
            {
                // Get the Web application configuration.
                System.Configuration.Configuration configuration = 
                    System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("/aspnet");

                // Get the section.
                System.Web.Configuration.ProfileSection profileSection = 
                    (System.Web.Configuration.ProfileSection) 
                    configuration.GetSection("system.web/profile");

// Get the current AutomaticSaveEnabled property value.
Console.WriteLine(
    "Current AutomaticSaveEnabled value: '{0}'", profileSection.AutomaticSaveEnabled);

// Set the AutomaticSaveEnabled property to false.
profileSection.AutomaticSaveEnabled = false;



// Get the current DefaultProvider property value.
Console.WriteLine(
    "Current DefaultProvider value: '{0}'", profileSection.DefaultProvider);

// Set the DefaultProvider property to "AspNetSqlProvider".
profileSection.DefaultProvider = "AspNetSqlProvider";



// Get the current Inherits property value.
Console.WriteLine(
    "Current Inherits value: '{0}'", profileSection.Inherits);

// Set the Inherits property to
// "CustomProfiles.MyCustomProfile, CustomProfiles.dll".
profileSection.Inherits = "CustomProfiles.MyCustomProfile, CustomProfiles.dll";



// Display all current root ProfilePropertySettings.
Console.WriteLine("Current Root ProfilePropertySettings:");
int rootPPSCtr = 0;
foreach (ProfilePropertySettings rootPPS in profileSection.PropertySettings)
{
    Console.WriteLine("  {0}: ProfilePropertySetting '{1}'", ++rootPPSCtr,
        rootPPS.Name);
}

// Get and modify a root ProfilePropertySettings object.
Console.WriteLine(
    "Display and modify 'LastReadDate' ProfilePropertySettings:");
ProfilePropertySettings profilePropertySettings =
    profileSection.PropertySettings["LastReadDate"];

// Get the current ReadOnly property value.
Console.WriteLine(
    "Current ReadOnly value: '{0}'", profilePropertySettings.ReadOnly);

// Set the ReadOnly property to true.
profilePropertySettings.ReadOnly = true;

// Get the current AllowAnonymous property value.
Console.WriteLine(
    "Current AllowAnonymous value: '{0}'", profilePropertySettings.AllowAnonymous);

// Set the AllowAnonymous property to true.
profilePropertySettings.AllowAnonymous = true;

// Get the current SerializeAs property value.
Console.WriteLine(
    "Current SerializeAs value: '{0}'", profilePropertySettings.SerializeAs);

// Set the SerializeAs property to SerializationMode.Binary.
profilePropertySettings.SerializeAs = SerializationMode.Binary;

// Get the current Type property value.
Console.WriteLine(
    "Current Type value: '{0}'", profilePropertySettings.Type);

// Set the Type property to "System.DateTime".
profilePropertySettings.Type = "System.DateTime";

// Get the current DefaultValue property value.
Console.WriteLine(
    "Current DefaultValue value: '{0}'", profilePropertySettings.DefaultValue);

// Set the DefaultValue property to "March 16, 2004".
profilePropertySettings.DefaultValue = "March 16, 2004";

// Get the current ProviderName property value.
Console.WriteLine(
    "Current ProviderName value: '{0}'", profilePropertySettings.Provider);

// Set the ProviderName property to "AspNetSqlRoleProvider".
profilePropertySettings.Provider = "AspNetSqlRoleProvider";

// Get the current Name property value.
Console.WriteLine(
    "Current Name value: '{0}'", profilePropertySettings.Name);

// Set the Name property to "LastAccessDate".
profilePropertySettings.Name = "LastAccessDate";

// Display all current ProfileGroupSettings.
Console.WriteLine("Current ProfileGroupSettings:");
int PGSCtr = 0;
foreach (ProfileGroupSettings propGroups in profileSection.PropertySettings.GroupSettings)
{
    Console.WriteLine("  {0}: ProfileGroupSetting '{1}'", ++PGSCtr,
        propGroups.Name);
    int PPSCtr = 0;
    foreach (ProfilePropertySettings props in propGroups.PropertySettings)
    {
        Console.WriteLine("    {0}: ProfilePropertySetting '{1}'", ++PPSCtr,
            props.Name);
    }
}

// Add a new group.
ProfileGroupSettings newPropGroup = new ProfileGroupSettings("Forum");
profileSection.PropertySettings.GroupSettings.Add(newPropGroup);

// Add a new PropertySettings to the group.
ProfilePropertySettings newProp = new ProfilePropertySettings("AvatarImage");
newProp.Type = "System.String, System.dll";
newPropGroup.PropertySettings.Add(newProp);

// Remove a PropertySettings from the group.
newPropGroup.PropertySettings.Remove("AvatarImage");
newPropGroup.PropertySettings.RemoveAt(0);

// Clear all PropertySettings from the group.
newPropGroup.PropertySettings.Clear();



// Display all current Providers.
Console.WriteLine("Current Providers:");
int providerCtr = 0;
foreach (ProviderSettings provider in profileSection.Providers)
{
    Console.WriteLine("  {0}: Provider '{1}' of type '{2}'", ++providerCtr, 
        provider.Name, provider.Type);
}

// Add a new provider.
profileSection.Providers.Add(new ProviderSettings("AspNetSqlProvider", "...SqlProfileProvider"));



// Get the current Enabled property value.
Console.WriteLine(
    "Current Enabled value: '{0}'", profileSection.Enabled);

// Set the Enabled property to false.
profileSection.Enabled = false;


                // Update if not locked.
                if (! profileSection.SectionInformation.IsLocked)
                {
                    configuration.Save();
                    Console.WriteLine("** Configuration updated.");
                }
                else
                    Console.WriteLine("** Could not update, section is locked.");
            }
            catch (System.ArgumentException e)
            {
                // Unknown error.
                Console.WriteLine(
                    "A invalid argument exception detected in UsingProfileSection Main. Check your");
                Console.WriteLine("command line for errors.");
            }
        }
    } // UsingProfileSection class end.

} // Samples.Aspnet.SystemWebConfiguration namespace end.

.NET Framework
Disponible depuis 2.0

Tous les membres statiques (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Retour au début
Afficher:
© 2016 Microsoft