Исключение при попытке сериализовать коллекцию
В Visual Studio создал проект Xamarin.Forms под Android.
Внутри проекта создаю класс Person с несколькими string полями.
Далее, создал метод, который должен сериализовать ObservableCollection<Person> на носитель:
public ObservableCollection<Person> _Person;
public Command SaveCommand { get; }
public void Serialize()
{
_Person = new ObservableCollection<Person>();
_Person.Add(new Person() { Abdomen = "90", Ankles = "10" });
XmlSerializer xmlSerializer = new XmlSerializer(typeof(ObservableCollection<Person>));
using (StreamWriter sw = new StreamWriter("client.xml"))
{
xmlSerializer.Serialize(sw, _Person);
}
}
При запуске отладки на устройстве, я жму кнопку которая должна сохранить коллекцию и получаю исключение:
There was an error reflecting type 'System.Collections.ObjectModel.ObservableCollection`1
Вероятнее всего, сериализация в Android происходит как-то по другому, потому как если я помещаю этот код в консольное приложение, то всё работает хорошо и я получаю файл сразу после запуска консоли.
Дополнение 1:
Если подключить using System.Text.Json; и сохранять данные в json, то всё сериализуется хорошо.