다음을 통해 공유


GenericEnumConverter 클래스

정의

문자열과 열거형 형식 간에 변환을 수행합니다.

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
상속

예제

다음 코드 예제에서는 사용 하는 사용자 지정 섹션 속성에 액세스 하는 방법을 보여 주는 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

다음 코드 예제에서는 이전 예제에서 액세스한 사용자 지정 열거자 속성을 정의하는 방법을 보여줍니다. 형식을 지정할 GenericEnumConverter 필요가 없습니다. 시스템에서 암시적으로 호출됩니다.


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

다음 예제는 이전 예제에서 사용한 구성 발췌입니다.

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

설명

이 형식에는 다른 모든 구성 변환기 형식의 경우와 같은 관련 된 강력한 형식의 속성에서 구성 파일에 문자열을 변환 합니다.

특히 개체는 GenericEnumConverter 구성 속성에 할당된 값을 값으로 Enum 변환하고 그 반대로 변환 String 합니다.

생성자

GenericEnumConverter(Type)

GenericEnumConverter 클래스의 새 인스턴스를 초기화합니다.

메서드

CanConvertFrom(ITypeDescriptorContext, Type)

변환이 허용되는지 여부를 확인합니다.

(다음에서 상속됨 ConfigurationConverterBase)
CanConvertFrom(Type)

이 변환기가 지정된 형식의 개체를 이 변환기의 형식으로 변환할 수 있는지 여부를 반환합니다.

(다음에서 상속됨 TypeConverter)
CanConvertTo(ITypeDescriptorContext, Type)

변환이 허용되는지 여부를 확인합니다.

(다음에서 상속됨 ConfigurationConverterBase)
CanConvertTo(Type)

이 변환기가 개체를 지정된 형식으로 변환할 수 있는지 여부를 반환합니다.

(다음에서 상속됨 TypeConverter)
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object)

StringEnum 형식으로 변환합니다.

ConvertFrom(Object)

지정된 값을 이 변환기의 형식으로 변환합니다.

(다음에서 상속됨 TypeConverter)
ConvertFromInvariantString(ITypeDescriptorContext, String)

고정 문화권 및 지정된 컨텍스트를 사용하여 지정된 문자열을 이 변환기의 형식으로 변환합니다.

(다음에서 상속됨 TypeConverter)
ConvertFromInvariantString(String)

고정 문화권을 사용하여, 지정된 문자열을 이 변환기의 형식으로 변환합니다.

(다음에서 상속됨 TypeConverter)
ConvertFromString(ITypeDescriptorContext, CultureInfo, String)

지정된 컨텍스트 및 문화권 정보를 사용하여, 지정된 텍스트를 개체로 변환합니다.

(다음에서 상속됨 TypeConverter)
ConvertFromString(ITypeDescriptorContext, String)

지정된 컨텍스트를 사용하여, 지정된 텍스트를 개체로 변환합니다.

(다음에서 상속됨 TypeConverter)
ConvertFromString(String)

지정된 텍스트를 개체로 변환합니다.

(다음에서 상속됨 TypeConverter)
ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type)

Enum 형식을 String 값으로 변환합니다.

ConvertTo(Object, Type)

인수를 사용하여, 지정된 값 개체를 지정된 형식으로 변환합니다.

(다음에서 상속됨 TypeConverter)
ConvertToInvariantString(ITypeDescriptorContext, Object)

지정된 context를 사용하여, 지정된 값을 고정 문화권의 문자열 표현으로 변환합니다.

(다음에서 상속됨 TypeConverter)
ConvertToInvariantString(Object)

지정된 값을 고정 문화권의 문자열 표현으로 변환합니다.

(다음에서 상속됨 TypeConverter)
ConvertToString(ITypeDescriptorContext, CultureInfo, Object)

지정된 컨텍스트 및 문화권 정보를 사용하여, 지정된 값을 문자열 표현으로 변환합니다.

(다음에서 상속됨 TypeConverter)
ConvertToString(ITypeDescriptorContext, Object)

지정된 컨텍스트를 사용하여, 지정된 값을 문자열 표현으로 변환합니다.

(다음에서 상속됨 TypeConverter)
ConvertToString(Object)

지정된 값을 문자열 표현으로 변환합니다.

(다음에서 상속됨 TypeConverter)
CreateInstance(IDictionary)

개체의 속성 값 집합이 지정된 Object를 다시 만듭니다.

(다음에서 상속됨 TypeConverter)
CreateInstance(ITypeDescriptorContext, IDictionary)

지정된 컨텍스트를 사용하여 이 TypeConverter가 연결된 형식의 인스턴스를 만들어 개체의 속성 값 집합을 제공합니다.

(다음에서 상속됨 TypeConverter)
Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetConvertFromException(Object)

변환을 수행할 수 없을 때 발생하는 예외를 반환합니다.

(다음에서 상속됨 TypeConverter)
GetConvertToException(Object, Type)

변환을 수행할 수 없을 때 발생하는 예외를 반환합니다.

(다음에서 상속됨 TypeConverter)
GetCreateInstanceSupported()

이 개체의 값을 변경할 때 CreateInstance(IDictionary) 메서드를 호출하여 새 값을 만들어야 하는지 여부를 반환합니다.

(다음에서 상속됨 TypeConverter)
GetCreateInstanceSupported(ITypeDescriptorContext)

이 개체의 값을 변경하려는 경우 CreateInstance(IDictionary) 호출을 통해 지정된 컨텍스트를 사용하여 새 값을 만들어야 하는지 여부를 반환합니다.

(다음에서 상속됨 TypeConverter)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetProperties(ITypeDescriptorContext, Object)

지정된 컨텍스트를 사용하여, 값 매개 변수로 지정한 배열 형식에 대한 속성 컬렉션을 반환합니다.

(다음에서 상속됨 TypeConverter)
GetProperties(ITypeDescriptorContext, Object, Attribute[])

지정된 컨텍스트 및 특성을 사용하여 값 매개 변수로 지정된 배열 형식에 대한 속성 컬렉션을 반환합니다.

(다음에서 상속됨 TypeConverter)
GetProperties(Object)

값 매개 변수로 지정된 배열 형식에 대한 속성 컬렉션을 반환합니다.

(다음에서 상속됨 TypeConverter)
GetPropertiesSupported()

이 개체가 속성을 지원하는지 여부를 반환합니다.

(다음에서 상속됨 TypeConverter)
GetPropertiesSupported(ITypeDescriptorContext)

이 개체가 지정된 컨텍스트를 사용하여 속성을 지원하는지 여부를 반환합니다.

(다음에서 상속됨 TypeConverter)
GetStandardValues()

이 형식 변환기를 사용하도록 디자인된 데이터 형식의 기본 컨텍스트에서 표준 값 컬렉션을 반환합니다.

(다음에서 상속됨 TypeConverter)
GetStandardValues(ITypeDescriptorContext)

형식 컨텍스트를 제공할 경우 이 형식 변환기가 사용되는 데이터 형식에 대한 표준 값의 컬렉션을 반환합니다.

(다음에서 상속됨 TypeConverter)
GetStandardValuesExclusive()

GetStandardValues()에서 반환된 표준 값 컬렉션이 단독 목록인지 여부를 반환합니다.

(다음에서 상속됨 TypeConverter)
GetStandardValuesExclusive(ITypeDescriptorContext)

지정된 컨텍스트를 사용하여, GetStandardValues()에서 반환된 표준 값 컬렉션이 가능한 값에 대한 단독 목록인지 여부를 반환합니다.

(다음에서 상속됨 TypeConverter)
GetStandardValuesSupported()

이 개체가 목록에서 선택할 수 있는 표준 값 집합을 지원하는지 여부를 반환합니다.

(다음에서 상속됨 TypeConverter)
GetStandardValuesSupported(ITypeDescriptorContext)

지정된 컨텍스트를 사용하여, 이 개체가 목록에서 선택할 수 있는 표준 값 집합을 지원하는지 여부를 반환합니다.

(다음에서 상속됨 TypeConverter)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
IsValid(ITypeDescriptorContext, Object)

지정된 값 개체가 이 형식 및 지정된 컨텍스트에 대해 유효한지 여부를 반환합니다.

(다음에서 상속됨 TypeConverter)
IsValid(Object)

지정된 값 개체를 이 형식에 사용할 수 있는지 여부를 반환합니다.

(다음에서 상속됨 TypeConverter)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
SortProperties(PropertyDescriptorCollection, String[])

속성 컬렉션을 정렬합니다.

(다음에서 상속됨 TypeConverter)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

적용 대상

추가 정보