Freigeben über


<declaredTypes>

Enthält die bekannten Typen, die DataContractSerializer beim Deserialisieren verwendet werden.

Weitere Informationen zu Datenverträgen und bekannten Typen finden Sie unter Bekannte Datentypen für Datenverträge.

<Konfiguration>
   <System.runtime.serialization>
     <Datacontractserializer>
       <declaredTypes>

Syntax

<configuration>
  <system.runtime.serialization>
    <dataContractSerializer>
      <declaredTypes>
        <add type="String ">
          <knownType type="String">
            <parameter index="Integer"/>
          </knownType>
        </add>
      </declaredTypes>
    </dataContractSerializer>
  </system.runtime.serialization>
</configuration>

Attribute und Elemente

In den folgenden Abschnitten werden Attribute sowie untergeordnete und übergeordnete Elemente beschrieben.

Attribute

Keiner.

Untergeordnete Elemente

Element Description
<hinzufügen> Fügt Typen hinzu, die bekannte Typen erfordern.

Übergeordnete Elemente

Element Description
<Datacontractserializer> Enthält Konfigurationsdaten für die DataContractSerializer.

Bemerkungen

Weitere Informationen zu bekannten Typen finden Sie unter Bekannte Datentypen und DataContractSerializer.

Example

Der folgende XML-Code zeigt deklarierte Typen und bekannte Typen, die einem DataContractSerializer Element hinzugefügt wurden. Das Beispiel zeigt drei Hinzugefügte Typen. Der erste ist ein benutzerdefinierter Typ namens "Orders", der einen bekannten Typ namens "Item" verwendet. Der zweite deklarierte Typ ist ein List<T> Typ, der als bekannter Typ verwendet Item wird. Schließlich ist der dritte deklarierte Typ ein Dictionary<TKey,TValue>. Der Dictionary<TKey,TValue> Klassentyp ist ein generischer Typ mit zwei Typparametern. The first represents the key and the second represents the value. Im folgenden Beispiel wird der Liste bekannter Typen ein List<T> zweiter Typ (der Wert) hinzugefügt. Sie müssen das index Attribut verwenden, um anzugeben, welcher Typparameter im bekannten Typ verwendet werden soll. In diesem Fall wird der Werttyp durch das Index-Attribut angegeben, das auf "1" festgelegt ist (die Auflistung ist nullbasiert).

<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>

Siehe auch