只是好奇为什么不支持Dictionary XmlSerializer?
XmlSerializer
通过使用DataContractSerializer对象并将其写入,您可以很容易地解决它XmlTextWriter,但是Dictionary的特征是什么使得XmlSerializer考虑到它实际上是KeyValuePairs数组很难处理。
DataContractSerializer
XmlTextWriter
实际上,您可以将传递IDictionary<TKey, TItem>给需要的方法IEnumerable<KeyValuePairs<TKey, ITem>>。
IDictionary<TKey, TItem>
IEnumerable<KeyValuePairs<TKey, ITem>>
哈希表通常需要哈希码和相等比较器提供程序。这些不能以XML轻松序列化,并且绝对不会移植。
但是我认为您已经找到了答案。只需将哈希表序列化为a List<KeyValuePair<K,V>>,然后将其(重新)构造为哈希表即可。
List<KeyValuePair<K,V>>