GenericEnumConverter Class
Converts between a string and an enumeration type.
Assembly: System.Configuration (in System.Configuration.dll)
System.ComponentModel.TypeConverter
System.Configuration.ConfigurationConverterBase
System.Configuration.GenericEnumConverter
| Name | Description | |
|---|---|---|
![]() | GenericEnumConverter(Type) | Initializes a new instance of the GenericEnumConverter class. |
| Name | Description | |
|---|---|---|
![]() | CanConvertFrom(ITypeDescriptorContext, Type) | Determines whether the conversion is allowed.(Inherited from ConfigurationConverterBase.) |
![]() | CanConvertFrom(Type) | Returns whether this converter can convert an object of the given type to the type of this converter.(Inherited from TypeConverter.) |
![]() | CanConvertTo(ITypeDescriptorContext, Type) | Determines whether the conversion is allowed.(Inherited from ConfigurationConverterBase.) |
![]() | CanConvertTo(Type) | Returns whether this converter can convert the object to the specified type.(Inherited from TypeConverter.) |
![]() | ConvertFrom(ITypeDescriptorContext, CultureInfo, Object) | Converts a String to an Enum type.(Overrides TypeConverter.ConvertFrom(ITypeDescriptorContext, CultureInfo, Object).) |
![]() | ConvertFrom(Object) | Converts the given value to the type of this converter.(Inherited from TypeConverter.) |
![]() | ConvertFromInvariantString(ITypeDescriptorContext, String) | Converts the given string to the type of this converter, using the invariant culture and the specified context.(Inherited from TypeConverter.) |
![]() | ConvertFromInvariantString(String) | Converts the given string to the type of this converter, using the invariant culture.(Inherited from TypeConverter.) |
![]() | ConvertFromString(ITypeDescriptorContext, CultureInfo, String) | Converts the given text to an object, using the specified context and culture information.(Inherited from TypeConverter.) |
![]() | ConvertFromString(ITypeDescriptorContext, String) | Converts the given text to an object, using the specified context.(Inherited from TypeConverter.) |
![]() | ConvertFromString(String) | Converts the specified text to an object.(Inherited from TypeConverter.) |
![]() | ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type) | Converts an Enum type to a String value.(Overrides TypeConverter.ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type).) |
![]() | ConvertTo(Object, Type) | Converts the given value object to the specified type, using the arguments.(Inherited from TypeConverter.) |
![]() | ConvertToInvariantString(ITypeDescriptorContext, Object) | Converts the specified value to a culture-invariant string representation, using the specified context.(Inherited from TypeConverter.) |
![]() | ConvertToInvariantString(Object) | Converts the specified value to a culture-invariant string representation.(Inherited from TypeConverter.) |
![]() | ConvertToString(ITypeDescriptorContext, CultureInfo, Object) | Converts the given value to a string representation, using the specified context and culture information.(Inherited from TypeConverter.) |
![]() | ConvertToString(ITypeDescriptorContext, Object) | Converts the given value to a string representation, using the given context.(Inherited from TypeConverter.) |
![]() | ConvertToString(Object) | Converts the specified value to a string representation.(Inherited from TypeConverter.) |
![]() | CreateInstance(IDictionary) | Re-creates an Object given a set of property values for the object.(Inherited from TypeConverter.) |
![]() | CreateInstance(ITypeDescriptorContext, IDictionary) | Creates an instance of the type that this TypeConverter is associated with, using the specified context, given a set of property values for the object.(Inherited from TypeConverter.) |
![]() | Equals(Object) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | GetCreateInstanceSupported() | Returns whether changing a value on this object requires a call to the CreateInstance method to create a new value.(Inherited from TypeConverter.) |
![]() | GetCreateInstanceSupported(ITypeDescriptorContext) | Returns whether changing a value on this object requires a call to CreateInstance to create a new value, using the specified context.(Inherited from TypeConverter.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetProperties(ITypeDescriptorContext, Object) | Returns a collection of properties for the type of array specified by the value parameter, using the specified context.(Inherited from TypeConverter.) |
![]() | GetProperties(ITypeDescriptorContext, Object, Attribute[]) | Returns a collection of properties for the type of array specified by the value parameter, using the specified context and attributes.(Inherited from TypeConverter.) |
![]() | GetProperties(Object) | Returns a collection of properties for the type of array specified by the value parameter.(Inherited from TypeConverter.) |
![]() | GetPropertiesSupported() | Returns whether this object supports properties.(Inherited from TypeConverter.) |
![]() | GetPropertiesSupported(ITypeDescriptorContext) | Returns whether this object supports properties, using the specified context.(Inherited from TypeConverter.) |
![]() | GetStandardValues() | Returns a collection of standard values from the default context for the data type this type converter is designed for.(Inherited from TypeConverter.) |
![]() | GetStandardValues(ITypeDescriptorContext) | Returns a collection of standard values for the data type this type converter is designed for when provided with a format context.(Inherited from TypeConverter.) |
![]() | GetStandardValuesExclusive() | Returns whether the collection of standard values returned from GetStandardValues is an exclusive list.(Inherited from TypeConverter.) |
![]() | GetStandardValuesExclusive(ITypeDescriptorContext) | Returns whether the collection of standard values returned from GetStandardValues is an exclusive list of possible values, using the specified context.(Inherited from TypeConverter.) |
![]() | GetStandardValuesSupported() | Returns whether this object supports a standard set of values that can be picked from a list.(Inherited from TypeConverter.) |
![]() | GetStandardValuesSupported(ITypeDescriptorContext) | Returns whether this object supports a standard set of values that can be picked from a list, using the specified context.(Inherited from TypeConverter.) |
![]() | GetType() | |
![]() | IsValid(ITypeDescriptorContext, Object) | Returns whether the given value object is valid for this type and for the specified context.(Inherited from TypeConverter.) |
![]() | IsValid(Object) | Returns whether the given value object is valid for this type.(Inherited from TypeConverter.) |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
This type, like all the other configuration converter types, converts strings found in the configuration file to and from the related strongly typed properties.
In particular, the GenericEnumConverter object converts a String value, assigned to a configuration property, to an Enum value and vice versa.
The following code example shows how to access a custom section property that uses the GenericEnumConverter type.
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); } } } }
The following code example shows how to define a custom enumerator property accessed in the previous example. Notice that there is no need to specify the GenericEnumConverter type; it is implicitly invoked by the system.
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; } }
The following example is a configuration excerpt used by the previous example.
<?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>
Available since 2.0
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
