Эта статья расширяет предыдущее обсуждение классов членов сериализации словаря. Этот класс содержит три свойства: guipath
, configpath
и mapeddrives
. mapeddrives
- это словарь, используемый для картирования букв привода в сетевые пути.
, однако, при сериализации или десеризации класса пользователь получает следующую ошибку:
]]]не может сериализовать участник app.configfile.mappeddrives
]
Эта ошибка возникает по какой-то причине, что общий словарь в .net 2.0 не является XML-сериализованной.
]solutions
], чтобы решить эту проблему, пользователи могут использовать пользовательские сериализуемые классы словаря. Пол Уэлтер предоставляет такой класс в своем блоге:
]using System;
using System.Collections.Generic;
using System.Text;
using System.Xml.Serialization;
[XmlRoot("dictionary")]
public class SerializableDictionary : Dictionary, IXmlSerializable
{
// 部分代码省略 ...
}
Этот класс реализует интерфейс ixmlSerializable
, позволяющий он сериализован и десериализован. Пользователь может затем использовать этот пользовательский класс словаря в своем основном классе:
// ...
public Dictionary mappedDrives = new SerializableDictionary();
// ...
это должно позволить классу быть сериализованными и десериализованными правильно.
]
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3