私はコードxmlをdeserelizeしてコンソールに印刷する方法は?
[XmlRoot("user_list")]
public class UserList
{
public UserList() { Items = new List<User>(); }
[XmlAttribute("user")]
public List<User> Items{get; set; }
}
[XmlType("user")]
public class User
{
[XmlAttribute("id")]
public string Id{get; set; }
[XmlAttribute("name")]
public string Name{get; set; }
}
class Program
{
static void Main(string[] args)
{
Program o = new Program();
o.Deser();
List<User> p = new List<User>();
foreach (User c in p)
{
Console.WriteLine(c.Id);
Console.WriteLine(c.Name);
}
Console.ReadKey();
}
public void Deser()
{
List<User> users;
using (var reader = new StreamReader("fileXML.xml"))
{
XmlSerializer deserializer = new XmlSerializer(typeof(List<User>),
new XmlRootAttribute("user_list"));
users = (List<User>)deserializer.Deserialize(reader)
}
}
}
を持っていると、VSには、出力とエラーなしがありません私は何が間違っている?どのようなリストにデバッグモードが含まれているかをどのように確認できますか? デシリアライズの問題があるかもしれませんが、何がわからないのでしょうか。
は私を責めないでください(
ところでXMLは、あなたの方法の
<?xml version="1.0"?>
<user_list>
<user>
<id>1</id>
<name>Joe</name>
</user>
<user>
<id>2</id>
<name>John</name>
</user>
</user_list>
あなたのメソッドで返されないユーザー –
あなたは 'o.Deser()'から何も返しません。あなたはそれを呼び出し、 'List p = new List ();'を実行し、空のリストの内容を出力しようとします。 –
dbc