Condividi tramite


Interfaccia System.Runtime.Serialization.IExtensibleDataObject

Questo articolo fornisce osservazioni supplementari alla documentazione di riferimento per questa API.

L'interfaccia IExtensibleDataObject fornisce una singola proprietà che imposta o restituisce una struttura utilizzata per archiviare dati esterni a un contratto dati. I dati aggiuntivi vengono archiviati in un'istanza della ExtensionDataObject classe e accessibili tramite la ExtensionData proprietà . In un'operazione di round trip in cui i dati vengono ricevuti, elaborati e inviati di nuovo, i dati aggiuntivi vengono inviati al mittente originale intatti. Ciò è utile per archiviare i dati ricevuti da versioni future del contratto. Se non si implementa l'interfaccia, eventuali dati aggiuntivi vengono ignorati e rimossi durante un'operazione di round trip.

Per usare questa funzionalità di controllo delle versioni

  1. Implementare l'interfaccia IExtensibleDataObject in una classe .

  2. Aggiungi la ExtensionData proprietà al tuo tipo.

  3. Aggiungere un membro privato di tipo ExtensionDataObject alla classe .

  4. Implementare i metodi di accesso get e set per la proprietà usando il nuovo membro privato.

  5. Applicare l'attributo DataContractAttribute alla classe . Impostare le Name proprietà e Namespace sui valori appropriati, se necessario.

Per ulteriori informazioni sul versionamento dei tipi, vedere Versionamento del contratto dati. Per informazioni sulla creazione di contratti dati compatibili con le versioni successive, vedere Forward-Compatible Contratti dati. Per altre informazioni sui contratti dati, vedere Uso di contratti dati.