<declaredTypes>

逆シリアル化時に DataContractSerializer が使用する既知の型が含まれています。Contains the known types that the DataContractSerializer uses when deserializing.

データコントラクトと既知の型の詳細については、「 データコントラクトの既知の型」を参照してください。For more information about data contracts and known types, see Data Contract Known Types.

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

属性および要素Attributes and Elements

以降のセクションでは、属性、子要素、および親要素について説明します。The following sections describe attributes, child elements, and parent elements.

属性Attributes

なし。None.

子要素Child Elements

要素Element 説明Description
<add> 既知の型を必要とする型を追加します。Adds types that require known types.

親要素Parent Elements

要素Element 説明Description
<dataContractSerializer> DataContractSerializer 用の設定データが含まれています。Contains configuration data for the DataContractSerializer.

解説Remarks

既知の型の詳細については、「 データコントラクトの既知の型 」と「」を参照してください DataContractSerializerFor more information about known types, see Data Contract Known Types and DataContractSerializer.

Example

次の XML コードは、要素に追加された宣言型と既知の型を示して DataContractSerializer います。The following XML code shows declared types and known types added to a DataContractSerializer element. この例は、追加された 3 つの型を示しています。The example shows three types being added. 最初の型は、"Item" という既知の型を使用する "Orders" という名前のカスタム型です。The first is a custom type named "Orders" that uses a known type named "Item". 2 つ目の宣言型は、既知の型として List<T> を使用する Item です。The second declared type is a List<T> that uses Item as a known type. 最後の 3 つ目の宣言型は、Dictionary<TKey,TValue> です。Finally the third declared type is a Dictionary<TKey,TValue>. Dictionary<TKey,TValue> クラスの型は、2 種類のパラメーターを持つジェネリック型です。The Dictionary<TKey,TValue> class type is a generic type, with two type parameters. 最初のパラメーターはキーを表し、2 番目のパラメーターは値を表します。The first represents the key and the second represents the value. 次の例は、2 番目の型 (値) の List<T> を既知の型の一覧に追加します。The following example adds a List<T> of the second type (the value) to the list of known types. index 属性を使用して、既知の型で使用する型パラメーターを指定する必要があります。You must use the index attribute to specify which type parameter to use in the known type. この場合には、"1" に設定された index 属性 (コレクションは 0 から始まる) によって値型が示されます。In this case, the value type is indicated by the index attribute set to "1" (the collection is zero-based).

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

関連項目See also