XmlAnyAttributeAttribute"指定成员(返回XmlAttribute对象数组的字段)可以包含任何XML属性。"然后"将XmlAnyAttributeAttribute应用于返回XmlAttribute或XmlNode对象数组的字段。"
但是,Windows Phone上没有XmlAttribute和XmlNode类型。
我正忙着将.NET 4.0移植到Windows Phone,但它会执行一些XML反序列化步骤。我希望做最小的代码更改,然后在任何重大更改之前让单元测试通过。
有没有办法做到这一点,还是需要另一种方式?
更新
我正在寻找XmlDocument,XmlElement版本的XmlAttribute。这是实际返回的内容。
拿这个XML:
<Group xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
GroupType = 'Technical' GroupNumber = '42' GroupBase = 'Red'>
<GroupName>MyGroup</GroupName>
</Group>
和这种类型:
public class Group
{
[XmlAnyAttribute]
public XmlAttribute[] UnhandledAttributes { get; set; }
[XmlElement]
public string GroupName { get; set; }
}
和这段代码:
XmlSerializer ser = new XmlSerializer(typeof(Group));
Group obj = ser.Deserialize(new StringReader(xmlString));
使用控制台应用程序(net45),UnhandledAttributes
数组属性将包含3个项目,每个项目对应<Group>
上的一个属性。
我将为Windows Phone使用哪种类型的阵列?