Compartir a través de


<declareTypes>

Contiene los tipos conocidos que usa DataContractSerializer al deserializar.

Para obtener más información sobre los contratos de datos y los tipos conocidos, vea Tipos conocidos del contrato de datos.

<configuración>
   <system.runtime.serialization>
     <dataContractSerializer>
       <declareTypes>

Syntax

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

Attributes

Ninguno.

Elementos secundarios

Elemento Description
<agregar> Agrega tipos que requieren tipos conocidos.

Elementos primarios

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

Observaciones

Para obtener más información sobre los tipos conocidos, vea Tipos conocidos del contrato de datos y DataContractSerializer.

Example

En el código XML siguiente se muestran los tipos declarados y los tipos conocidos agregados a un DataContractSerializer elemento . En el ejemplo se muestran tres tipos que se agregan. La primera es un tipo personalizado denominado "Orders" que usa un tipo conocido denominado "Item". El segundo tipo declarado es un List<T> que usa Item como un tipo conocido. Por último, el tercer tipo declarado es .Dictionary<TKey,TValue> El Dictionary<TKey,TValue> tipo de clase es un tipo genérico, con dos parámetros de tipo. La primera representa la clave y la segunda representa el valor. En el ejemplo siguiente se agrega un List<T> del segundo tipo (el valor) a la lista de tipos conocidos. Debe usar el index atributo para especificar el parámetro de tipo que se va a usar en el tipo conocido. En este caso, el tipo de valor se indica mediante el atributo de índice 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