Thomas Nielsen - getCore
Ваш xml становится чувствительным к большим и маленьким буквам, так сказать
<myclass>
<myproperty>1</myproperty>
</myclass>
не является
public class MyClass{
public int MyProperty{ get;set;}
}
скорее было бы
public class myclass{
public int myproperty{ get;set;}
}
Итак, что вам нужно сделать, так это соответствовать тому, как вы его написали
... (обновление решения)...
Поэтому, если это не сработает,я предлагаю пойти другим путем. Сделать первый класс
и, наблюдая за вашим xml, становится ясно, что класс AdviceTag может быть сгенерирован с двумя простыми типами и одним сложным типом под названием Acy с двумя значениями (Blocked и amount), возможно, вот так:
public class AdviceTag
{
public string AClassName { get; set; }
public string BlockedBalance { get; set; }
public Acy Acy { get; set; }
}
public class Acy
{
public string Blocked{ get; set; }
public string Amount { get; set; }
}
Итак, давайте просто сгенерируем xml, создав экземпляр этого класса, и сериализуем его
var aTag = new AdviceTag { AClassName = "Sav1 Account", BlockedBalance = "0", Acy = new Acy { Amount = "56", Blocked = "23" } };
var ser = new XmlSerializer(typeof(AdviceTag));
string filename = Assembly.GetExecutingAssembly().Location;
int pos = filename.LastIndexOf(@"\");
filename = filename.Substring(0, pos +1) + "myfile.xml";
using(var fs = new FileStream(filename, FileMode.Create, FileAccess.Write))
{
ser.Serialize(fs, aTag);
fs.Flush();
fs.Close();
}
Мы помещаем сериализованный xml-файл в то же место, где выполняется сборка, и вызываем его myfile.xml, тогда это выглядит так:
<?xml version="1.0"?>
<AdviceTag xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<AClassName>Sav1 Account</AClassName>
<BlockedBalance>0</BlockedBalance>
<Acy>
<Blocked>23</Blocked>
<Amount>56</Amount>
</Acy>
</AdviceTag>
И в чем же была ошибка?
Ну, ваш xml обозначает сложный тип под названием acy, содержащий два свойства-члена, но вы изо всех сил пытались поместить их в arraylist, где вам это не нужно.