GenericEnumConverter Clase

Definición

Convierte entre una cadena y un tipo de enumeración.

public ref class GenericEnumConverter sealed : System::Configuration::ConfigurationConverterBase
public sealed class GenericEnumConverter : System.Configuration.ConfigurationConverterBase
type GenericEnumConverter = class
    inherit ConfigurationConverterBase
Public NotInheritable Class GenericEnumConverter
Inherits ConfigurationConverterBase
Herencia

Ejemplos

En el ejemplo de código siguiente se muestra cómo acceder a una propiedad de sección personalizada que usa el GenericEnumConverter tipo .

using System;
using System.IO;
using System.ComponentModel;
using System.Configuration;

namespace Samples.AspNet
{
  
    public sealed class UsingGenericEnumConverter
    {
        public static void GetPermission()
        {
            try
            {
                CustomSection section =
                    ConfigurationManager.GetSection("CustomSection")
                    as CustomSection;
                
                Console.WriteLine("Default Permission: {0}", 
                    section.Permission.ToString());
            }
            catch (System.Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }

        public static void SetPermission()
        {
            try
            {
                System.Configuration.Configuration config =
                  ConfigurationManager.OpenExeConfiguration(
                  ConfigurationUserLevel.None);

                CustomSection section =
                    config.Sections.Get("CustomSection")
                    as CustomSection;

                section.Permission = 
                    CustomSection.Permissions.FullControl;

                section.SectionInformation.ForceSave = true;
                config.Save(ConfigurationSaveMode.Full); 
                config.Save();

                Console.WriteLine("Current Protection: {0}",
                    section.Permission.ToString());
            }
            catch (System.Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
    }
}
Imports System.IO
Imports System.ComponentModel
Imports System.Configuration




NotInheritable Public Class UsingGenericEnumConverter
    
    Public Shared Sub GetPermission() 
        Try
            Dim section As CustomSection = _
            ConfigurationManager.GetSection("CustomSection")
            Console.WriteLine("Default Permission: {0}", _
            section.Permission.ToString())
        Catch e As System.Exception
            Console.WriteLine(e.Message)
        End Try
    
    End Sub
    
    
    Public Shared Sub SetPermission() 
        Try
            Dim config _
            As System.Configuration.Configuration = _
            ConfigurationManager.OpenExeConfiguration( _
            ConfigurationUserLevel.None)
            
            Dim section As CustomSection = _
            config.Sections.Get("CustomSection")
            
            section.Permission = _
            CustomSection.Permissions.FullControl
            
            section.SectionInformation.ForceSave = True
            config.Save(ConfigurationSaveMode.Full)
            config.Save()
            
            Console.WriteLine( _
            "Current Protection: {0}", _
            section.Permission.ToString())
        Catch e As System.Exception
            Console.WriteLine(e.Message)
        End Try
    
    End Sub
End Class

En el ejemplo de código siguiente se muestra cómo definir una propiedad de enumerador personalizada a la que se tiene acceso en el ejemplo anterior. Observe que no es necesario especificar el GenericEnumConverter tipo; el sistema invoca implícitamente.


public enum Permissions
{
    FullControl         = 0,
    Modify              = 1,
    ReadExecute         = 2,
    Read                = 3,
    Write               = 4,
    SpecialPermissions  = 5
}

[ConfigurationProperty("permission", DefaultValue = Permissions.Read)]
public Permissions Permission
{
    get
    {
        return (Permissions)this["permission"];
    }

    set
    {
        this["permission"] = value;
    }
}

Public Enum Permissions
    FullControl = 0
    Modify = 1
    ReadExecute = 2
    Read = 3
    Write = 4
    SpecialPermissions = 5
End Enum 'Permissions


<ConfigurationProperty("permission", _
DefaultValue:=Permissions.Read)> _
Public Property Permission() As Permissions
    Get
        Return CType(Me("permission"), Permissions)
    End Get

    Set(ByVal value As Permissions)
        Me("permission") = Value
    End Set
End Property

En el ejemplo siguiente se muestra un extracto de configuración usado por el ejemplo anterior.

<?xml version="1.0" encoding="utf-8"?>
<configuration>

  <configSections>
    <section name="CustomSection"
      type="Samples.AspNet.CustomSection,
      ConfigurationConverters,
      Version=1.0.0.0, Culture=neutral,
      PublicKeyToken=null"
      allowDefinition="Everywhere"
      allowExeDefinition="MachineToApplication"
      restartOnExternalChanges="true" />
  </configSections>

  <CustomSection fileName="default.txt" maxIdleTime="90" timeDelay="infinite" cdStr="str0, str1" permission="Read" maxUsers="Infinite"/>

</configuration>

Comentarios

Este tipo, al igual que todos los demás tipos de convertidor de configuración, convierte las cadenas que se encuentran en el archivo de configuración a y desde las propiedades relacionadas fuertemente tipadas.

En concreto, el GenericEnumConverter objeto convierte un String valor, asignado a una propiedad de configuración, a un Enum valor y viceversa.

Constructores

Nombre Description
GenericEnumConverter(Type)

Inicializa una nueva instancia de la clase GenericEnumConverter.

Métodos

Nombre Description
CanConvertFrom(ITypeDescriptorContext, Type)

Determina si se permite la conversión.

(Heredado de ConfigurationConverterBase)
CanConvertFrom(Type)

Devuelve si este convertidor puede convertir un objeto del tipo especificado al tipo de este convertidor.

(Heredado de TypeConverter)
CanConvertTo(ITypeDescriptorContext, Type)

Determina si se permite la conversión.

(Heredado de ConfigurationConverterBase)
CanConvertTo(Type)

Devuelve si este convertidor puede convertir el objeto al tipo especificado.

(Heredado de TypeConverter)
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object)

Convierte un objeto String en un Enum tipo.

ConvertFrom(Object)

Convierte el valor especificado en el tipo de este convertidor.

(Heredado de TypeConverter)
ConvertFromInvariantString(ITypeDescriptorContext, String)

Convierte la cadena especificada en el tipo de este convertidor, utilizando la referencia cultural invariable y el contexto especificado.

(Heredado de TypeConverter)
ConvertFromInvariantString(String)

Convierte la cadena especificada en el tipo de este convertidor mediante la referencia cultural invariable.

(Heredado de TypeConverter)
ConvertFromString(ITypeDescriptorContext, CultureInfo, String)

Convierte el texto especificado en un objeto utilizando el contexto y la información de referencia cultural especificados.

(Heredado de TypeConverter)
ConvertFromString(ITypeDescriptorContext, String)

Convierte el texto especificado en un objeto utilizando el contexto especificado.

(Heredado de TypeConverter)
ConvertFromString(String)

Convierte el texto especificado en un objeto .

(Heredado de TypeConverter)
ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type)

Convierte un Enum tipo en un String valor.

ConvertTo(Object, Type)

Convierte el objeto de valor especificado en el tipo especificado mediante los argumentos .

(Heredado de TypeConverter)
ConvertToInvariantString(ITypeDescriptorContext, Object)

Convierte el valor especificado en una representación de cadena invariable de referencia cultural mediante el contexto especificado.

(Heredado de TypeConverter)
ConvertToInvariantString(Object)

Convierte el valor especificado en una representación de cadena invariable de referencia cultural.

(Heredado de TypeConverter)
ConvertToString(ITypeDescriptorContext, CultureInfo, Object)

Convierte el valor especificado en una representación de cadena mediante el contexto y la información de referencia cultural especificados.

(Heredado de TypeConverter)
ConvertToString(ITypeDescriptorContext, Object)

Convierte el valor especificado en una representación de cadena mediante el contexto especificado.

(Heredado de TypeConverter)
ConvertToString(Object)

Convierte el valor especificado en una representación de cadena.

(Heredado de TypeConverter)
CreateInstance(IDictionary)

Vuelva a crear un Object conjunto determinado de valores de propiedad para el objeto .

(Heredado de TypeConverter)
CreateInstance(ITypeDescriptorContext, IDictionary)

Crea una instancia del tipo al que TypeConverter está asociado, utilizando el contexto especificado, dado un conjunto de valores de propiedad para el objeto.

(Heredado de TypeConverter)
Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetConvertFromException(Object)

Devuelve una excepción que se produce cuando no se puede realizar una conversión.

(Heredado de TypeConverter)
GetConvertToException(Object, Type)

Devuelve una excepción que se produce cuando no se puede realizar una conversión.

(Heredado de TypeConverter)
GetCreateInstanceSupported()

Devuelve si cambiar un valor en este objeto requiere una llamada al CreateInstance(IDictionary) método para crear un nuevo valor.

(Heredado de TypeConverter)
GetCreateInstanceSupported(ITypeDescriptorContext)

Devuelve si cambiar un valor en este objeto requiere una llamada a para CreateInstance(IDictionary) crear un nuevo valor mediante el contexto especificado.

(Heredado de TypeConverter)
GetHashCode()

Actúa como la función hash predeterminada.

(Heredado de Object)
GetProperties(ITypeDescriptorContext, Object, Attribute[])

Devuelve una colección de propiedades para el tipo de matriz especificado por el parámetro value, utilizando el contexto y los atributos especificados.

(Heredado de TypeConverter)
GetProperties(ITypeDescriptorContext, Object)

Devuelve una colección de propiedades para el tipo de matriz especificado por el parámetro value, utilizando el contexto especificado.

(Heredado de TypeConverter)
GetProperties(Object)

Devuelve una colección de propiedades para el tipo de matriz especificado por el parámetro value.

(Heredado de TypeConverter)
GetPropertiesSupported()

Devuelve si este objeto admite propiedades.

(Heredado de TypeConverter)
GetPropertiesSupported(ITypeDescriptorContext)

Devuelve si este objeto admite propiedades, utilizando el contexto especificado.

(Heredado de TypeConverter)
GetStandardValues()

Devuelve una colección de valores estándar del contexto predeterminado para el tipo de datos para el que está diseñado este convertidor de tipos.

(Heredado de TypeConverter)
GetStandardValues(ITypeDescriptorContext)

Devuelve una colección de valores estándar para el tipo de datos para el que está diseñado este convertidor de tipos cuando se proporciona con un contexto de formato.

(Heredado de TypeConverter)
GetStandardValuesExclusive()

Devuelve si la colección de valores estándar devueltos de GetStandardValues() es una lista exclusiva.

(Heredado de TypeConverter)
GetStandardValuesExclusive(ITypeDescriptorContext)

Devuelve si la colección de valores estándar devueltos de GetStandardValues() es una lista exclusiva de valores posibles, utilizando el contexto especificado.

(Heredado de TypeConverter)
GetStandardValuesSupported()

Devuelve si este objeto admite un conjunto estándar de valores que se pueden seleccionar de una lista.

(Heredado de TypeConverter)
GetStandardValuesSupported(ITypeDescriptorContext)

Devuelve si este objeto admite un conjunto estándar de valores que se pueden seleccionar de una lista mediante el contexto especificado.

(Heredado de TypeConverter)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IsValid(ITypeDescriptorContext, Object)

Devuelve si el objeto de valor especificado es válido para este tipo y para el contexto especificado.

(Heredado de TypeConverter)
IsValid(Object)

Devuelve si el objeto de valor especificado es válido para este tipo.

(Heredado de TypeConverter)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
SortProperties(PropertyDescriptorCollection, String[])

Ordena una colección de propiedades.

(Heredado de TypeConverter)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también