Я хочу загрузить файл XML с сериализацией XML.Тип теперь должен быть типом enum.Итак, XML выглядит так:
<Ressource name="ressource_name" type= "Integer" >
...
</Ressource>
И я хотел загрузить его в класс, подобный этому:
[Serializable]
public enum Res_Type
{
[XmlEnum(Name = "Integer")]
Integer,
[XmlEnum(Name = "Decimal")]
Decimal,
[XmlEnum(Name = "Text")]
Text
}
public class Ressource
{
[XmlAttribute]
public string name { set; get; }
[XmlAttribute]
public Res_Type type { get; set; }
}
Когда я ищу эту тему, я нахожу только разные способы решения.это, тогда мне это нужно.Мне нужно иметь XML, как показано выше, но я понятия не имею, как загрузить информацию в виде как enum.
Обновление: для проверки сериализации и десериализации я использую этот код:
Ressource res = new Ressource();
res.name = "ressource_name";
res.type = Res_Type.Integer;
XmlSerializer serializer = new XmlSerializer(res.GetType());
using (StreamWriter writer = new StreamWriter(@"h:\test.xml"))
{
serializer.Serialize(writer, res);
}
XmlSerializer xmlSerializer = new XmlSerializer(typeof(Ressource));
StringReader stringReader = new StringReader(@"h:\test.xml");
res = (Ressource)xmlSerializer.Deserialize(stringReader);
И я получаю сообщение об ошибке: InvalidOperationException