Passaggi del processo di serializzazione
Quando il metodo Serialize viene chiamato su un formattatore, la serializzazione degli oggetti viene eseguita in base alle regole seguenti:
Viene effettuato un controllo per determinare se il formattatore dispone di un selettore di surrogati. In caso affermativo, viene verificato se il selettore di surrogati gestisce oggetti del tipo dato. Se il selettore gestisce tale tipo di oggetto, viene chiamato ISerializable.GetObjectData sul selettore di surrogati.
Se il selettore di surrogati non è presente o non gestisce il tipo di oggetto, viene verificato se l'oggetto è contrassegnato con l'attributo Serializable. In caso negativo, viene generata una SerializationException.
Se l'oggetto è opportunamente contrassegnato, viene verificato se implementa l'interfaccia ISerializable. In caso affermativo, viene chiamato GetObjectData sull'oggetto.
Se l'oggetto non implementa ISerializable, verranno adottati i criteri di serializzazione predefiniti e tutti i campi non contrassegnati come NonSerialized verranno serializzati.
Vedere anche
Altre risorse
Serializzazione binaria
Oggetti remoti
Serializzazione XML e SOAP