2015-05-12 14 views
5

In Java si consiglia vivamente che tutte le classi serializzabili dichiarino esplicitamente serialVersionUID poiché il calcolo predefinito serialVersionUID è estremamente sensibile ai dettagli della classe e l'implementazione del compilatore non è affidabile.Perché non è necessario dichiarare un serialVersionUID (o equivalente) in C#?

Cosa c'è di così speciale nella serializzazione in C#?

+0

Si noti che, in Java, è * * deliberatamente inaffidabile. – immibis

+0

@Juan Questo è rilevante solo in contesto Java –

+0

Siamo spiacenti, ancora assonnato questa mattina! – Juan

risposta

0

Nella serializzazione .Net è meno irritabile rispetto a Java.

Per impostazione predefinita, supporta nuovi campi solo per impostazione predefinita e ignora tutti i dati che non si aspetta.

È ancora possibile implementare lo stesso tipo di controllo di versione implementando l'interfaccia ISerializable nella classe e aggiungendo il proprio VersionId personalizzato alla classe e controllandolo lì.

Si può leggere di più su questo here

Problemi correlati