Podziel się swoim widokiem System.Runtime.Serialization.

Moje pytania i wątpliwości to:

  1. Klasa i wszystkie zawarte w niej obiekty muszą mieć słowo kluczowe [Serializable] nad klasą.
  2. Co jeśli jakiś obiekt jest typu statycznego.
  3. Jak serializacja obsługuje obiekt statyczny.
  4. Wpływ wersji biblioteki DLL na obiekt serializowany. (np. zserializowałem jeden obiekt, a później przesłałem nową kompilację na serwer, w takim przypadku czy ma to jakiś wpływ na wcześniej zserializowany obiekt.)

Z góry dziękuję.

0
Sham 29 sierpień 2012, 09:56

2 odpowiedzi

Najlepsza odpowiedź

1) Nie wszyscy członkowie muszą mieć możliwość serializacji, możesz oznaczyć ich tagiem [NonSerialized()]

2, 3) Statyka nie będzie działać, zobacz serialize-a-static-class

4) Z mojego doświadczenia z serializacją wynika, że ​​każda zmiana w serializowanym obiekcie spowoduje przerwanie deserializacji.

AKTUALIZACJA: Komentarz Jona Skeeta (to znaczy, że uczę się czegoś nowego) obsługuje 4). Ale zwróć uwagę na dół strony. Musisz bardzo uważać na zmianę atrybutów Serializacja tolerancyjna dla wersji

0
Community 23 maj 2017, 15:20

Serializacja to niezwykle szeroki temat i nie zadajesz ani jednego pytania.
sugerowałbym rozpoczęcie czytania biblioteki msdn, dałoby to dobry początek-
http://msdn.microsoft.com/en- us/biblioteka/7ay27kt9(v=vs.100).aspx
http://msdn.microsoft.com/en-us/magazine/cc301761.aspx

1
Buzz 29 sierpień 2012, 10:43