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 объект преобразует String значение, назначенное свойству конфигурации, в Enum значение и наоборот.
Конструкторы
GenericEnumConverter(Type) |
Инициализирует новый экземпляр класса GenericEnumConverter. |
Методы
CanConvertFrom(ITypeDescriptorContext, Type) |
Определяет, разрешено ли преобразование. (Унаследовано от ConfigurationConverterBase) |
CanConvertFrom(Type) |
Возвращает значение, указывающее, может ли этот преобразователь преобразовать объект заданного типа к типу этого преобразователя. (Унаследовано от TypeConverter) |
CanConvertTo(ITypeDescriptorContext, Type) |
Определяет, разрешено ли преобразование. (Унаследовано от ConfigurationConverterBase) |
CanConvertTo(Type) |
Возвращает значение, указывающее, может ли этот преобразователь выполнить преобразование данного объекта к заданному типу. (Унаследовано от TypeConverter) |
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object) | |
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) | |
ConvertTo(Object, Type) |
Преобразует данное значение в указанный тип, используя заданные аргументы. (Унаследовано от TypeConverter) |
ConvertToInvariantString(ITypeDescriptorContext, Object) |
Преобразует указанное значение в строковое представление для нейтральных языка и региональных параметров. (Унаследовано от 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[]) |
Возвращает коллекцию свойств для типа массива, заданного параметром value, используя заданные контекст и атрибуты. (Унаследовано от 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) |