<declaredTypes>
Contient les types connus utilisés par le DataContractSerializer lors de la désérialisation.
Pour plus d’informations sur les contrats de données et les types connus, consultez Types connus de contrat de données.
<configuration>
<system.runtime.serialization>
<dataContractSerializer>
<declaredTypes>
Syntaxe
<configuration>
<system.runtime.serialization>
<dataContractSerializer>
<declaredTypes>
<add type="String ">
<knownType type="String">
<parameter index="Integer"/>
</knownType>
</add>
</declaredTypes>
</dataContractSerializer>
</system.runtime.serialization>
</configuration>
Attributs et éléments
Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.
Attributs
Aucune.
Éléments enfants
Élément | Description |
---|---|
<add> | Ajoute des types qui requièrent des types connus. |
Éléments parents
Élément | Description |
---|---|
<dataContractSerializer> | Contient les données de configuration correspondant au DataContractSerializer. |
Notes
Pour plus d’informations sur les types connus, consultez Types connus de contrat de données et DataContractSerializer.
Exemple
Le code XML suivant illustre l’ajout de types déclarés et connus à un élément DataContractSerializer
. L'exemple montre l'ajout de trois types. Le premier est un type personnalisé nommé « Orders » qui utilise un type connu nommé « Item ». Le deuxième est un List<T> qui utilise Item
comme un type connu. Le troisième et dernier est un Dictionary<TKey,TValue>. Le type de classe Dictionary<TKey,TValue> est un type générique contenant deux paramètres de type. Le premier représente la clé et le second représente la valeur. L'exemple suivant ajoute un List<T> du deuxième type (la valeur) à la liste de types connus. Vous devez utiliser l'attribut index
pour spécifier le paramètre de type à utiliser dans le type connu. Dans ce cas, le type de valeur est indiqué par l'ensemble d'attributs d'index ayant la valeur "1" (la collection est de base zéro).
<configuration>
<system.runtime.serialization>
<dataContractSerializer>
<declaredTypes>
<add type="Examples.Types.Orders, SerializationTypes, Version = 2.0.0.0, Culture = neutral, PublicKeyToken=null">
<knownType type="Examples.Types.Item, SerializationTypes, Version=2.0.0.0, Culture=neutral, PublicKey=null" />
</add>
<add type="System.Collections.Generic.List`1, SerializationTypes, Version = 2.0.0.0, Culture = neutral, PublicKeyToken=null">
<knownType type="Examples.Types.Item, SerializationTypes, Version=2.0.0.0, Culture=neutral, PublicKey=null" />
</add>
<add type="System.Collections.Generic.Dictionary`2, SerializationTypes, Version = 2.0.0.0, Culture = neutral, PublicKeyToken=null">
<knownType type="System.Collections.Generic.List`1, SerializationTypes, Version = 2.0.0.0, Culture = neutral, PublicKeyToken=null">
<parameter index="1"/>
</knownType>
</add>
</declaredTypes>
</dataContractSerializer>
</system.runtime.serialization>
</configuration>