GenericEnumConverter Třída

Definice

Převede mezi řetězcem a typem výčtu.

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
Dědičnost

Příklady

Následující příklad kódu ukazuje, jak získat přístup k vlastní části vlastnost, která používá typ GenericEnumConverter .

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

Následující příklad kódu ukazuje, jak definovat vlastní enumerátor vlastnost přístupná v předchozím příkladu. Všimněte si, že typ není nutné zadávat GenericEnumConverter . Systém ho implicitně vyvolá.


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

Následující příklad je výňatek konfigurace používaný předchozím příkladem.

<?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>

Poznámky

Tento typ, stejně jako všechny ostatní typy převaděče konfigurace, převede řetězce nalezené v konfiguračním souboru do a ze souvisejících vlastností silného typu.

Konkrétně GenericEnumConverter objekt převede String hodnotu přiřazenou ke vlastnosti konfigurace na Enum hodnotu a naopak.

Konstruktory

Name Description
GenericEnumConverter(Type)

Inicializuje novou instanci GenericEnumConverter třídy.

Metody

Name Description
CanConvertFrom(ITypeDescriptorContext, Type)

Určuje, zda je převod povolen.

(Zděděno od ConfigurationConverterBase)
CanConvertFrom(Type)

Vrátí, zda tento převaděč může převést objekt daného typu na typ tohoto převaděče.

(Zděděno od TypeConverter)
CanConvertTo(ITypeDescriptorContext, Type)

Určuje, zda je převod povolen.

(Zděděno od ConfigurationConverterBase)
CanConvertTo(Type)

Vrátí, zda tento převaděč může převést objekt na zadaný typ.

(Zděděno od TypeConverter)
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object)

Převede typ StringEnum na typ.

ConvertFrom(Object)

Převede danou hodnotu na typ tohoto převaděče.

(Zděděno od TypeConverter)
ConvertFromInvariantString(ITypeDescriptorContext, String)

Převede daný řetězec na typ tohoto převaděče pomocí invariantní jazykové verze a zadaného kontextu.

(Zděděno od TypeConverter)
ConvertFromInvariantString(String)

Převede daný řetězec na typ tohoto převaděče pomocí invariantní jazykové verze.

(Zděděno od TypeConverter)
ConvertFromString(ITypeDescriptorContext, CultureInfo, String)

Převede daný text na objekt pomocí zadaného kontextu a informací o jazykové verzi.

(Zděděno od TypeConverter)
ConvertFromString(ITypeDescriptorContext, String)

Převede daný text na objekt pomocí zadaného kontextu.

(Zděděno od TypeConverter)
ConvertFromString(String)

Převede zadaný text na objekt.

(Zděděno od TypeConverter)
ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type)

Enum Převede typ na String hodnotu.

ConvertTo(Object, Type)

Převede daný objekt hodnoty na zadaný typ pomocí argumentů.

(Zděděno od TypeConverter)
ConvertToInvariantString(ITypeDescriptorContext, Object)

Převede zadanou hodnotu na reprezentaci řetězce invariantní jazykové verze pomocí zadaného kontextu.

(Zděděno od TypeConverter)
ConvertToInvariantString(Object)

Převede zadanou hodnotu na reprezentaci řetězce invariantní jazykové verze.

(Zděděno od TypeConverter)
ConvertToString(ITypeDescriptorContext, CultureInfo, Object)

Převede danou hodnotu na řetězcovou reprezentaci pomocí zadaného kontextu a informací o jazykové verzi.

(Zděděno od TypeConverter)
ConvertToString(ITypeDescriptorContext, Object)

Převede danou hodnotu na řetězcovou reprezentaci pomocí daného kontextu.

(Zděděno od TypeConverter)
ConvertToString(Object)

Převede zadanou hodnotu na řetězcovou reprezentaci.

(Zděděno od TypeConverter)
CreateInstance(IDictionary)

Znovu vytvoří danou Object sadu hodnot vlastností objektu.

(Zděděno od TypeConverter)
CreateInstance(ITypeDescriptorContext, IDictionary)

Vytvoří instanci typu, ke kterému je přidružena TypeConverter , pomocí zadaného kontextu vzhledem k sadě hodnot vlastností objektu.

(Zděděno od TypeConverter)
Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetConvertFromException(Object)

Vrátí výjimku, která se vyvolá, když převod nelze provést.

(Zděděno od TypeConverter)
GetConvertToException(Object, Type)

Vrátí výjimku, která se vyvolá, když převod nelze provést.

(Zděděno od TypeConverter)
GetCreateInstanceSupported()

Vrátí, zda změna hodnoty pro tento objekt vyžaduje volání CreateInstance(IDictionary) metody k vytvoření nové hodnoty.

(Zděděno od TypeConverter)
GetCreateInstanceSupported(ITypeDescriptorContext)

Vrátí, zda změna hodnoty v tomto objektu vyžaduje volání k CreateInstance(IDictionary) vytvoření nové hodnoty pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetProperties(ITypeDescriptorContext, Object, Attribute[])

Vrátí kolekci vlastností pro typ pole určeného parametrem hodnoty pomocí zadaného kontextu a atributů.

(Zděděno od TypeConverter)
GetProperties(ITypeDescriptorContext, Object)

Vrátí kolekci vlastností pro typ pole určeného parametrem hodnoty pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetProperties(Object)

Vrátí kolekci vlastností pro typ pole určeného parametrem hodnoty.

(Zděděno od TypeConverter)
GetPropertiesSupported()

Vrátí, zda tento objekt podporuje vlastnosti.

(Zděděno od TypeConverter)
GetPropertiesSupported(ITypeDescriptorContext)

Vrátí, zda tento objekt podporuje vlastnosti pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetStandardValues()

Vrátí kolekci standardních hodnot z výchozího kontextu pro datový typ, pro který je tento převaděč typů určen.

(Zděděno od TypeConverter)
GetStandardValues(ITypeDescriptorContext)

Vrátí kolekci standardních hodnot pro datový typ, pro který je tento převaděč typů určen, pokud je k dispozici s kontextem formátu.

(Zděděno od TypeConverter)
GetStandardValuesExclusive()

Vrátí, zda kolekce standardních hodnot vrácených z GetStandardValues() je exkluzivní seznam.

(Zděděno od TypeConverter)
GetStandardValuesExclusive(ITypeDescriptorContext)

Vrátí, zda kolekce standardních hodnot vrácených z GetStandardValues() je výhradním seznamem možných hodnot pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetStandardValuesSupported()

Vrátí, zda tento objekt podporuje standardní sadu hodnot, které lze vybrat ze seznamu.

(Zděděno od TypeConverter)
GetStandardValuesSupported(ITypeDescriptorContext)

Vrátí, zda tento objekt podporuje standardní sadu hodnot, které lze vybrat ze seznamu pomocí zadaného kontextu.

(Zděděno od TypeConverter)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
IsValid(ITypeDescriptorContext, Object)

Vrátí, zda daný objekt hodnoty je platný pro tento typ a pro zadaný kontext.

(Zděděno od TypeConverter)
IsValid(Object)

Vrátí, zda daný objekt hodnoty je platný pro tento typ.

(Zděděno od TypeConverter)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
SortProperties(PropertyDescriptorCollection, String[])

Seřadí kolekci vlastností.

(Zděděno od TypeConverter)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také