如何反序列化KeyValuePair列表
我的类实现 IXmlSerialized 并具有如下属性:
public List<KeyValuePair<int, bool>> exportList
{
get { return _exportList; }
set { _exportList = value; }
}
我有一个 XML 文档,并且必须使用我的 XML 文档中的条目填充列表,
public void ReadXml(XmlReader reader)
{
}
如下所示:
<Object msdata:InstanceType="CYNOX_Datenlogger_Software.Geräte.Slave, CYNOX_Datenlogger_Software, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" Name="Device 4" ID="4" IDParent="3" PrimeAddress="0" SecondaryAdd="10520089" AdditionalInfo="" Locked="False" StandAlone="True" ManuID="ELS" csvPath="" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>0</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>true</Value>
<Key>1</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>true</Value>
<Key>2</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>3</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>4</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>5</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>6</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>7</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>8</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
</Object>
我怎样才能完成此操作?
My Class implements IXmlSerializable and has a property like this:
public List<KeyValuePair<int, bool>> exportList
{
get { return _exportList; }
set { _exportList = value; }
}
I have an XML Document and have to fill the list with entrys in
public void ReadXml(XmlReader reader)
{
}
My XML-Document looks like this:
<Object msdata:InstanceType="CYNOX_Datenlogger_Software.Geräte.Slave, CYNOX_Datenlogger_Software, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" Name="Device 4" ID="4" IDParent="3" PrimeAddress="0" SecondaryAdd="10520089" AdditionalInfo="" Locked="False" StandAlone="True" ManuID="ELS" csvPath="" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>0</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>true</Value>
<Key>1</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>true</Value>
<Key>2</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>3</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>4</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>5</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>6</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>7</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
<KeyValuePairThatSerializesProperlyOfInt32Boolean xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Value>false</Value>
<Key>8</Key>
</KeyValuePairThatSerializesProperlyOfInt32Boolean>
</Object>
How can i accomplish this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以利用一点 LINQ to XML:
You can utilize little bit of LINQ to XML: