Partager via


IDataContractSurrogate.GetDataContractType(Type) Méthode

Définition

Pendant la sérialisation, la désérialisation et l’importation et exportation de schémas, retourne un type de contrat de données qui substitue le type spécifié.

public:
 Type ^ GetDataContractType(Type ^ type);
public Type GetDataContractType (Type type);
abstract member GetDataContractType : Type -> Type
Public Function GetDataContractType (type As Type) As Type

Paramètres

type
Type

Type CLR Type à substituer.

Retours

Type à substituer pour la valeur type. Ce type doit être sérialisable par le DataContractSerializer. Par exemple, il doit être marqué avec l'attribut DataContractAttribute ou d'autres mécanismes que le sérialiseur reconnaît.

Exemples

L'exemple suivant illustre une implémentation de la méthode 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

S’applique à