/// <summary> /// Saves data. /// </summary> /// <param name="fileName">File name to save data to.</param> /// <param name="data">Data to be serialized.</param> public static void Serialize(string fileName, FilteredErrorListData data) { try { XDocument doc = new XDocument(); XElement rootNode = new XElement("FilteredErrorListItemsConfiguration"); doc.Add(rootNode); foreach (string filteredId in data.completelyFilteredErrorIds) { XElement node = new XElement("CompletelyFilteredErrorId"); node.Value = filteredId; rootNode.Add(node); } foreach (FilteredErrorListItemData item in data.filteredItems) { XElement node = new XElement("FilteredItem"); rootNode.Add(node); XElement errorIdNode = new XElement("ErrorId"); errorIdNode.Value = item.ErrorId; node.Add(errorIdNode); XElement unqIdNode = new XElement("UniqueId"); unqIdNode.Value = item.UniqueId; node.Add(unqIdNode); } doc.Save(fileName); } catch { } /* * TextWriter w = null; * try * { * XmlSerializer s = new XmlSerializer(typeof(FilteredErrorListData)); * w = new StreamWriter(fileName); * s.Serialize(w, data); * } * catch{ } * finally * { * if (w != null) * w.Close(); * }*/ }
/// <summary> /// Loads data. /// </summary> /// <param name="fileName">File name to load data from.</param> /// <returns>Deserialized Data.</returns> public static FilteredErrorListData Deserialize(string fileName) { try { XDocument doc = XDocument.Load(fileName); XElement rootNode = doc.Root; FilteredErrorListData data = new FilteredErrorListData(); foreach (XElement node in rootNode.Elements("CompletelyFilteredErrorId")) { string id = node.Value; data.completelyFilteredErrorIds.Add(id); } foreach (XElement node in rootNode.Elements("FilteredItem")) { FilteredErrorListItemData item = new FilteredErrorListItemData(); item.ErrorId = node.Element("ErrorId").Value; item.UniqueId = node.Element("UniqueId").Value; data.filteredItems.Add(item); } return(data); } catch { return(new FilteredErrorListData()); } /* * TextReader r = null; * try * { * XmlSerializer s = new XmlSerializer(typeof(FilteredErrorListData)); * r = new StreamReader(fileName); * FilteredErrorListData data = s.Deserialize(r) as FilteredErrorListData; * * return data; * } * catch * { * return new FilteredErrorListData(); * } * finally * { * if( r != null ) * r.Close(); * }*/ }
/// <summary> /// Loads data. /// </summary> /// <param name="fileName">File name to load data from.</param> /// <returns>Deserialized Data.</returns> public static FilteredErrorListData Deserialize(string fileName) { try { XDocument doc = XDocument.Load(fileName); XElement rootNode = doc.Root; FilteredErrorListData data = new FilteredErrorListData(); foreach (XElement node in rootNode.Elements("CompletelyFilteredErrorId")) { string id = node.Value; data.completelyFilteredErrorIds.Add(id); } foreach (XElement node in rootNode.Elements("FilteredItem")) { FilteredErrorListItemData item = new FilteredErrorListItemData(); item.ErrorId = node.Element("ErrorId").Value; item.UniqueId = node.Element("UniqueId").Value; data.filteredItems.Add(item); } return data; } catch { return new FilteredErrorListData(); } /* TextReader r = null; try { XmlSerializer s = new XmlSerializer(typeof(FilteredErrorListData)); r = new StreamReader(fileName); FilteredErrorListData data = s.Deserialize(r) as FilteredErrorListData; return data; } catch { return new FilteredErrorListData(); } finally { if( r != null ) r.Close(); }*/ }
/// <summary> /// Saves data. /// </summary> /// <param name="fileName">File name to save data to.</param> /// <param name="data">Data to be serialized.</param> public static void Serialize(string fileName, FilteredErrorListData data) { try { XDocument doc = new XDocument(); XElement rootNode = new XElement("FilteredErrorListItemsConfiguration"); doc.Add(rootNode); foreach(string filteredId in data.completelyFilteredErrorIds) { XElement node = new XElement("CompletelyFilteredErrorId"); node.Value = filteredId; rootNode.Add(node); } foreach (FilteredErrorListItemData item in data.filteredItems) { XElement node = new XElement("FilteredItem"); rootNode.Add(node); XElement errorIdNode = new XElement("ErrorId"); errorIdNode.Value = item.ErrorId; node.Add(errorIdNode); XElement unqIdNode = new XElement("UniqueId"); unqIdNode.Value = item.UniqueId; node.Add(unqIdNode); } doc.Save(fileName); } catch { } /* TextWriter w = null; try { XmlSerializer s = new XmlSerializer(typeof(FilteredErrorListData)); w = new StreamWriter(fileName); s.Serialize(w, data); } catch{ } finally { if (w != null) w.Close(); }*/ }