Compartir a través de


<declaredTypes>

Contiene los tipos conocidos que DataContractSerializer usa al deserializar.

Para más información sobre los contratos de datos y los tipos conocidos, consulte Tipos conocidos de contratos de datos.

<configuration>
  <system.runtime.serialization>
    <dataContractSerializer>
      <declaredTypes>

Sintaxis

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

Atributos y elementos

En las siguientes secciones se describen los atributos, los elementos secundarios y los elementos primarios.

Atributos

Ninguno.

Elementos secundarios

Elemento Descripción
<add> Agrega tipos que requieren tipos conocidos.

Elementos primarios

Elemento Descripción
<dataContractSerializer> Contiene los datos de configuración para DataContractSerializer.

Comentarios

Para más información sobre los tipos conocidos, consulte Tipos conocidos de contratos de datos y DataContractSerializer.

Ejemplo

El siguiente código XML muestra tipos declarados y tipos conocidos agregados a un elemento DataContractSerializer. El ejemplo muestra tres tipos que se va a agregar. El primero es un tipo personalizado denominado "Orders" que usa un tipo conocido denominado "Item". El segundo el tipo declarado es List<T> que usa Item como un tipo conocido. Finalmente, el tercer tipo declarado es Dictionary<TKey,TValue>. El tipo de clase Dictionary<TKey,TValue> es un tipo genérico, con dos parámetros de tipo. El primero representa la clave y el segundo representa el valor. El ejemplo siguiente agrega List<T> del segundo tipo (el valor) a la lista de tipos conocidos. Debe usar el atributo index para especificar qué parámetro de tipo se va a usar en el tipo conocido. En este caso, el atributo de índice indica el tipo de valor establecido en "1" (la colección está basada en cero).

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

Consulte también