多值 XML 项目到 C#

Multi-value XML item to C#

我有一个 XML 文件,其中包含一组格式如下的项目:

<MyItems>
   <item size_x="2" size_y="2"/>
   <item value1="0" value2="0"/>
   <item value1="0" value2="0"/>
   <item value1="0" value2="0"/>
   <item value1="0" value2="0"/>
<MyItems/>

我正在尝试将其反序列化为二维数组,但我不知道这些项目在 C# 中转换成什么数据类型。 这些是结构吗?如果是这样,列表中的第一个条目如何为其值使用不同的名称? 如果我从我的代码中重新序列化列表,格式是否相同?

感谢任何帮助。

System.Xml.Linq.XDocument XD = System.Xml.Linq.XDocument.Load("URL");
Dictionary<string,string> Data = (from _Mi in XD.Elements("MyItems")
              from _It in _Mi.Elements("item")
              select new
              {
                  V1= n.Attribute("value1").Value,
                  V2= n.Attribute("value2").Value
              }).ToDictionary(c => (string)c.V1, c => (string)c.V2);

你也可以使用

V1 = n.FirstAttribute.Value;
V2 = n.LastAttribute.Value;

_values = n.Attributes.tolist();