Ich bin verwirrt über die Serialisierungsprobe von MSDN.GetObjectData auf Serialisierung aufrufen
My Verwirrung in Methode GetObjectData (die während der Serialisierung genannt wird), wird das Verfahren,
- Serialisieren sowohl die zusätzlichen Daten (in Methode GetObjectData von AddValue) und die Felder/Eigenschaften der Klasse;
- oder schreiben Sie einfach die Daten in der Methode GetObjectData, ohne Felder/Eigenschaften der Klasse zu schreiben?
Ich habe debuggt scheint (2) ist korrekt - keine Felder/Eigenschaften Daten serialisiert werden, wenn GetObjectData Methode verwendet wird? Ist das korrekt? (Ich bin kein Experte und will einfach nur hier, um zu bestätigen, aber 100% sicher über mich.)
Oder für binäre mit dem oben genannten, können Sie NetDataContractSerializer verwenden: http://msdn.microsoft.com/en-us/library/system.runtime.serialization.netdatacontractserializer.aspx –
Danke Marc! Was sind die Unterschiede zwischen der Implementierung von ISerializable Interface vs. mit [Serializable] -Attribut markieren? – George2
Das Markieren als [Serializable] sagt einfach "es ist OK, dieses zu serialisieren"; Die meisten Serialisierungs-Engines werden dies erkennen und Felder (Implementierung) oder Eigenschaften (Verträge) automatisch serialisieren. ISerializable wird von BinaryFormatter für ** benutzerdefinierte ** Serialisierung verwendet, wobei * Sie * die Binärdatei steuern. –