Я получаю строку XML по сети, и я хочу иметь возможность поместить ее содержимое в объект.Когда я устанавливаю сеттеры класса как общедоступные, они работают совершенно нормально.Однако я хочу иметь возможность сохранять их закрытыми, и в этом случае я получаю следующую ошибку:
System.InvalidOperationException: «Невозможно десериализовать тип« MyApp.Random », поскольку он содержит свойство« data »у которого нет общедоступного сеттера. '
Я просмотрел весь интернет и не нашел решения.
Мой класс очень прост, например:
public class Random
{
public string data{ get; private set; }
public string abc{ get; private set; }
public string defg{ get; private set; }
}
Вот как я пытаюсь десериализовать это:
var serializer = new XmlSerializer(typeof(Random));
result = (Random)serializer.Deserialize(new StringReader(xmlString));