IDataContractSurrogate.GetDataContractType(Type) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Serileştirme, seri durumdan çıkarma ve şema içeri ve dışarı aktarma sırasında, belirtilen türün yerini alan bir veri sözleşmesi türü döndürür.
public:
Type ^ GetDataContractType(Type ^ type);
public Type GetDataContractType (Type type);
abstract member GetDataContractType : Type -> Type
Public Function GetDataContractType (type As Type) As Type
Parametreler
Döndürülenler
Type değerinin yerine kullanılacak değeritype
. Bu tür tarafından DataContractSerializerserileştirilebilir olmalıdır. Örneğin, seri hale getiricinin DataContractAttribute tanıdığı öznitelik veya diğer mekanizmalarla işaretlenmelidir.
Örnekler
Aşağıdaki örnekte yönteminin bir uygulaması gösterilmektedir GetDataContractType .
public Type GetDataContractType(Type type)
{
Console.WriteLine("GetDataContractType invoked");
Console.WriteLine("\t type name: {0}", type.Name);
// "Person" will be serialized as "PersonSurrogated"
// This method is called during serialization,
// deserialization, and schema export.
if (typeof(Person).IsAssignableFrom(type))
{
Console.WriteLine("\t returning PersonSurrogated");
return typeof(PersonSurrogated);
}
return type;
}
Public Function GetDataContractType(ByVal type As Type) As Type _
Implements IDataContractSurrogate.GetDataContractType
Console.WriteLine("GetDataContractType invoked")
Console.WriteLine(vbTab & "type name: {0}", type.Name)
' "Person" will be serialized as "PersonSurrogated"
' This method is called during serialization,
' deserialization, and schema export.
If GetType(Person).IsAssignableFrom(type) Then
Console.WriteLine(vbTab & "returning PersonSurrogated")
Return GetType(PersonSurrogated)
End If
Return type
End Function