ValueSerializer.GetSerializerFor 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
개체에 대한 ValueSerializer를 가져옵니다.
오버로드
GetSerializerFor(PropertyDescriptor) |
속성의 CLR 속성 설명자를 전달하여 속성에 대해 선언된 ValueSerializer 를 가져옵니다. |
GetSerializerFor(Type) |
지정된 형식에 대해 선언된 ValueSerializer 를 가져옵니다. |
GetSerializerFor(PropertyDescriptor, IValueSerializerContext) |
지정된 컨텍스트를 사용하여 지정된 속성에 선언된 ValueSerializer 를 가져옵니다. |
GetSerializerFor(Type, IValueSerializerContext) |
지정된 컨텍스트를 사용하여 지정된 형식에 대해 선언된 ValueSerializer 를 가져옵니다. |
GetSerializerFor(PropertyDescriptor)
속성의 CLR 속성 설명자를 전달하여 속성에 대해 선언된 ValueSerializer 를 가져옵니다.
public:
static System::Windows::Markup::ValueSerializer ^ GetSerializerFor(System::ComponentModel::PropertyDescriptor ^ descriptor);
public static System.Windows.Markup.ValueSerializer GetSerializerFor (System.ComponentModel.PropertyDescriptor descriptor);
static member GetSerializerFor : System.ComponentModel.PropertyDescriptor -> System.Windows.Markup.ValueSerializer
Public Shared Function GetSerializerFor (descriptor As PropertyDescriptor) As ValueSerializer
매개 변수
- descriptor
- PropertyDescriptor
직렬화할 속성의 CLR 속성 설명자입니다.
반환
지정된 속성과 연결된 직렬 변환기입니다.
null
을 반환할 수 있습니다.
예외
descriptor
은 null
입니다.
설명
ValueSerializer 속성 또는 속성의 값으로 사용되는 형식의 은 속성 또는 형식 선언에 특성을 적용하여 ValueSerializerAttribute 표시됩니다. 메서드는 GetSerializerFor CLR 형식 시스템 정보를 읽고 속성에 있는 경우 특성에 따라 새 클래스를 반환하거나 속성의 형식에서 찾은 경우 새 ValueSerializer 클래스를 반환하는 유틸리티 메서드입니다.
null
는 이러한 직렬 변환기가 없는 경우 반환될 수 있습니다.
null
형식 또는 속성이 의도적으로 null 값 ValueSerializerAttribute으로 특성이 지정된 경우에도 반환될 수 있습니다.
를 지원하는 또 다른 모드 GetSerializerFor 는 를 래핑 TypeConverter 하고 메서드를 메서드 Convert*String
로 변환 Convert
하는 구현인 내부 TypeConverterValueSerializer
클래스 ValueSerializer 를 반환하는 것입니다(instance TypeConverter.ConvertTo 형식의 String 입력으로 호출되고 로 변환됩니다.ConvertToString 이 작업은 다음을 모두 충족하는 경우에만 수행됩니다.
TypeConverterAttribute 은 관련 속성 또는 관련 속성의 형식에서 찾을 수 있습니다.
표시된 를 TypeConverter 성공적으로 생성할 수 있습니다.
는 TypeConverter 형식을 참조하는 라는 에 대해 TypeConverter.ConvertTo를 반환
true
합니다String.는 TypeConverter 형식을 참조하는 라는 에 대해 TypeConverter.CanConvertTo를 반환
true
합니다String.는 TypeConverter 형식을 참조하는 라는 에 대해 TypeConverter.CanConvertFrom를 반환
true
합니다String.
참고
다음은 특수한 경우입니다. DateTime 형식은 를 DateTimeValueSerializerString 반환하고, 형식은 내부적이지만 기능적인 serializer(StringValueSerializer
)를 반환합니다.
적용 대상
GetSerializerFor(Type)
지정된 형식에 대해 선언된 ValueSerializer 를 가져옵니다.
public:
static System::Windows::Markup::ValueSerializer ^ GetSerializerFor(Type ^ type);
public static System.Windows.Markup.ValueSerializer GetSerializerFor (Type type);
static member GetSerializerFor : Type -> System.Windows.Markup.ValueSerializer
Public Shared Function GetSerializerFor (type As Type) As ValueSerializer
매개 변수
- type
- Type
ValueSerializer 를 가져올 형식입니다.
반환
지정된 형식과 연결된 직렬 변환기입니다.
null
을 반환할 수 있습니다.
예외
type
이(가) null
인 경우
설명
ValueSerializer 형식에 대한 은 형식 선언에 특성을 적용하여 ValueSerializerAttribute 표시됩니다. 메서드는 GetSerializerFor CLR 형식 시스템 정보를 읽고 지정된 type
에 있는 경우 특성에 따라 새 ValueSerializer 클래스를 반환하는 유틸리티 메서드입니다.
null
는 이러한 직렬 변환기가 없는 경우 반환될 수 있습니다.
null
는 형식이 의도적으로 null 값 ValueSerializerAttribute로 특성이 지정된 경우에도 반환될 수 있습니다.
를 지원하는 또 다른 모드 GetSerializerFor 는 를 래핑 TypeConverter 하고 메서드를 메서드 Convert*String
로 변환 Convert
하는 구현인 내부 TypeConverterValueSerializer
클래스 ValueSerializer 를 반환하는 것입니다(instance TypeConverter.ConvertTo 형식의 String 입력으로 호출되고 로 변환됩니다.ConvertToString 이 작업은 다음을 모두 충족하는 경우에만 수행됩니다.
에서 TypeConverterAttribute 을 찾을 수 있습니다
type
.표시된 를 TypeConverter 성공적으로 생성할 수 있습니다.
는 TypeConverter 형식을 참조하는 라는 에 대해 TypeConverter.ConvertTo를 반환
true
합니다String.는 TypeConverter 형식을 참조하는 라는 에 대해 TypeConverter.CanConvertTo를 반환
true
합니다String.는 TypeConverter 형식을 참조하는 라는 에 대해 TypeConverter.CanConvertFrom를 반환
true
합니다String.
참고
다음은 특수한 경우입니다. DateTime 형식은 를 DateTimeValueSerializerString 반환하고, 형식은 내부적이지만 기능적인 serializer(StringValueSerializer
)를 반환합니다.
적용 대상
GetSerializerFor(PropertyDescriptor, IValueSerializerContext)
지정된 컨텍스트를 사용하여 지정된 속성에 선언된 ValueSerializer 를 가져옵니다.
public:
static System::Windows::Markup::ValueSerializer ^ GetSerializerFor(System::ComponentModel::PropertyDescriptor ^ descriptor, System::Windows::Markup::IValueSerializerContext ^ context);
public static System.Windows.Markup.ValueSerializer GetSerializerFor (System.ComponentModel.PropertyDescriptor descriptor, System.Windows.Markup.IValueSerializerContext context);
static member GetSerializerFor : System.ComponentModel.PropertyDescriptor * System.Windows.Markup.IValueSerializerContext -> System.Windows.Markup.ValueSerializer
Public Shared Function GetSerializerFor (descriptor As PropertyDescriptor, context As IValueSerializerContext) As ValueSerializer
매개 변수
- descriptor
- PropertyDescriptor
직렬화할 속성의 설명자입니다.
- context
- IValueSerializerContext
변환에 사용되는 컨텍스트 정보입니다.
반환
지정된 속성과 연결된 직렬 변환기입니다.
예외
descriptor
이(가) null
인 경우
설명
이 오버로드는 CLR 형식 시스템에 보고된 특성에만 의존하는 대신 를 서비스로 사용하고 context
서비스의 구현 IValueSerializerContext.GetValueSerializerFor을 호출합니다. 구현은 IValueSerializerContext.GetValueSerializerFor 일반적으로 에 의존하지만 특정 컨텍스트에 descriptor
대한 특수 동작을 구현할 수 있습니다.
호출자가 서비스에서 사용할 수 IValueSerializerContext 있는 가 있는 경우 이 메서드를 호출해야 합니다. 이렇게 하면 특정 컨텍스트에 대해 올바른 ValueSerializer 가 반환됩니다.
컨텍스트가 지정된 에 대해 에서 IValueSerializerContext.GetValueSerializerFor 반환 null
되거나 지정한 descriptor
컨텍스트가 null
인 경우 동작은 오버로드를 호출하는 GetSerializerFor(PropertyDescriptor) 것과 동일합니다.
적용 대상
GetSerializerFor(Type, IValueSerializerContext)
지정된 컨텍스트를 사용하여 지정된 형식에 대해 선언된 ValueSerializer 를 가져옵니다.
public:
static System::Windows::Markup::ValueSerializer ^ GetSerializerFor(Type ^ type, System::Windows::Markup::IValueSerializerContext ^ context);
public static System.Windows.Markup.ValueSerializer GetSerializerFor (Type type, System.Windows.Markup.IValueSerializerContext context);
static member GetSerializerFor : Type * System.Windows.Markup.IValueSerializerContext -> System.Windows.Markup.ValueSerializer
Public Shared Function GetSerializerFor (type As Type, context As IValueSerializerContext) As ValueSerializer
매개 변수
- type
- Type
ValueSerializer 를 가져올 형식입니다.
- context
- IValueSerializerContext
변환에 사용되는 컨텍스트 정보입니다.
반환
지정된 형식과 연결된 직렬 변환기입니다.
예외
type
이(가) null
인 경우
설명
이 오버로드는 CLR 형식 시스템에 보고된 특성에만 의존하는 대신 를 서비스로 사용하고 context
서비스의 구현 IValueSerializerContext.GetValueSerializerFor을 호출합니다. 구현은 IValueSerializerContext.GetValueSerializerFor 일반적으로 에 의존하지만 특정 컨텍스트에 type
대한 특수 동작을 구현할 수 있습니다.
호출자가 서비스에서 사용할 수 IValueSerializerContext 있는 가 있는 경우 이 메서드를 호출해야 합니다. 이렇게 하면 특정 컨텍스트에 대해 올바른 ValueSerializer 가 반환됩니다.
컨텍스트가 지정된 에 대해 에서 IValueSerializerContext.GetValueSerializerFor 반환 null
되거나 지정한 type
컨텍스트가 null
인 경우 동작은 오버로드를 호출하는 GetSerializerFor(Type) 것과 동일합니다.
적용 대상
.NET