Jak serializować / deserializować niezmienny typ listy w c #
Jeśli mam zdefiniowaną klasę
[DataContract()]
class MyObject {
[DataMember()]
ImmutableList<string> Strings { get; private set}
}
TheImmutableList<T>
typ pochodzi z biblioteki immutableshttps://www.nuget.org/packages/Microsoft.Bcl.Immutable. Zauważ, że klasa ImmutableList nie ma domyślnego konstruktora ani zmiennej metody Add. Dodawanie rzeczy do listy ma formę.
myList = myList.Add("new string");
Czy mogę dodać niestandardowe wsparcie do mechanizmu serializacji .NET, aby obsługiwać ten typ i pokazać, jak go deserializować?
Obecnie kolekcja jest po prostu pomijana przy deserializacji, ale dobrze jest ją serializować.