У меня есть пользовательский класс со следующими свойствами: «Объект имеет Лидер свойства, которое не имеет никакого публичного набора»Serializer Ошибка
Class Person
readonly public string Name;
readonly public string FamilyName;
readonly public string UserName;
private List<Person> Team = new List<Person>();
public Person Leader { get; private set; }
public bool HasTeam { get; private set; }
Я получаю ошибку на сериализатор потому что Однако мне нужно сохранить его закрытым, так как изменение Лидер вызовет ошибки. Вы знаете какой-нибудь способ? Или мне нужно сделать его общедоступным и помнить, что я не могу его установить?
Спасибо, Майкл
'[XmlIgnore() ] возможно, но вы действительно не предлагаете много информации здесь :) – Icepickle
Но таким образом он пропустит его при сохранении/загрузке. :(Мне просто нужно сохранить объект Person при закрытии и загрузить на открытое. – user2868288
Тогда XmlSerializer может и не быть тем, что вам нужно, вам нужно сохранить его в XML или использовать, например, вместо BinaryFormatter (который сериализуется полный объект вместо этого?). Еще один (плохой) вариант может заключаться в том, чтобы проверить установку Лидера, если он еще не установлен, в этом случае установлен, и когда он установлен, выведите ошибку (для чего требуется, чтобы личный личный Лидер подтвердил если он еще не установлен) – Icepickle