System Marketing Marketing Advance

huseyint.com » XML Serializable Generic Dictionary tipi Advance Marketing System Szh Modules Php Name Forums File Viewtopic T 183 Advance Marketing System

Advance Marketing System Szh Modules Php Name Forums File Viewtopic T 183 Advance Marketing System

Serialization işlemi sırasında yeni tipimizin nasıl serialize edileceğini de bildirmiş sevgili Pete Welter. Sonuç olarak temiz ve çok rahat kullanılabilir yeni bir tip ortaya çıkmış. Kod şu şekilde:

[XmlRoot("dictionary")]
public class SerializableDictionary<TKey, TValue>
 : Dictionary<TKey, TValue>, IXmlSerializable
{
 #region IXmlSerializable Members
 public System.Xml.Schema.XmlSchema GetSchema()
 {
 return null;
 }
 
 public void ReadXml(System.Xml.XmlReader reader)
 {
 XmlSerializer keySerializer = new XmlSerializer(typeof(TKey));
 XmlSerializer valueSerializer = new XmlSerializer(typeof(TValue));
 
 bool wasEmpty = reader.IsEmptyElement;
 reader.Read();
 
 if (wasEmpty)
 return;
 
 while (reader.NodeType != System.Xml.XmlNodeType.EndElement)
 {
 reader.ReadStartElement("item");
 
 reader.ReadStartElement("key");
 TKey key = (TKey)keySerializer.Deserialize(reader);
 reader.ReadEndElement();
 
 reader.ReadStartElement("value");
 TValue value = (TValue)valueSerializer.Deserialize(reader);
 reader.ReadEndElement();
 
 this.Add(key, value);
 
 reader.ReadEndElement();
 reader.MoveToContent();
 }
 reader.ReadEndElement();
 }
 
 public void WriteXml(System.Xml.XmlWriter writer)
 {
 XmlSerializer keySerializer = new XmlSerializer(typeof(TKey));
 XmlSerializer valueSerializer = new XmlSerializer(typeof(TValue));
 
 foreach (TKey key in this.Keys)
 {
 writer.WriteStartElement("item");
 
 writer.WriteStartElement("key");
 keySerializer.Serialize(writer, key);
 writer.WriteEndElement();
 
 writer.WriteStartElement(
ahuseyint.com » XML Serializable Generic Dictionary tipi Advance Marketing System Szh Modules Php Name Forums File Viewtopic T 183 Advance Marketing Systemw Marketing System
zhuseyint.com » XML Serializable Generic Dictionary tipi Advance Marketing System Szh Modules Php Name Forums File Viewtopic T 183 Advance Marketing Systemb w Marketing n Marketing Advance