Condividi tramite


<aggiunta> dell'elemento <declaredTypes>

Aggiunge un tipo usato dal serializzatore DataContractSerializer durante la deserializzazione. Ogni tipo dichiarato contiene i tipi noti che verranno restituiti come campo o come proprietà del tipo dichiarato.

<Configurazione>
  <System.runtime.serialization>
    <Datacontractserializer>
      <declaredTypes>
        <Aggiungere>

Sintassi

<add type="String">
  <knownType type="String">
    <parameter index="Integer"
               type="String" />
  </knownType>
</add>

Attributi ed elementi

Nelle sezioni seguenti vengono descritti gli attributi, gli elementi figlio e gli elementi padre.

Attributi

Attributo Descrizione
type Attributo stringa obbligatorio.

Specifica il nome del tipo (compreso lo spazio dei nomi), il nome dell'assembly, il numero di versione, impostazioni cultura e token di chiave pubblica.

Elementi figlio

Elemento Descrizione
<knownType> Specifica il tipo conosciuto del tipo dichiarato da aggiungere. Se il tipo dichiarato è un tipo generico occorre aggiungere anche un elemento di parametro all'elemento <knownType> per specificare quale parametro generico viene usato per restituire il tipo conosciuto.

Elementi padre

Elemento Descrizione
<declaredTypes> Contiene i tipi che richiedono tipi noti durante la deserializzazione eseguita dal serializzatore DataContractSerializer.

Commenti

Per altre informazioni sui tipi noti, vedere Tipi noti del contratto di dati e DataContractSerializer.

Per un esempio di uso di questo elemento, vedere dataContractSerializer<>.

Nota

Se si aggiunge il tipo Object come tipo <declaredType>, viene generata un'eccezione ConfigurationErrorsException. Ciò è dovuto al fatto che il tipo Object non può essere usato come tipo dichiarato in configurazione.

Esempio

<add type="MyCompany.Library.Shape,
           MyAssembly, Version=2.0.0.0, Culture=neutral,
           PublicKeyToken=XXXXXX, processorArchitecture=MSIL">
  <knownType type="MyCompany.Library.Circle,
                   MyAssembly, Version=2.0.0.0, Culture=neutral,
                   PublicKeyToken=XXXXXX,
                   processorArchitecture=MSIL" />
</add>

Vedere anche