Month: February 2013

Deserialize this / Deserialize inside of the instance

Type type = this.GetType(); PropertyInfo[] properties = type.GetProperties(); reader.Read(); while (reader.Read()) { PropertyInfo property = properties.GetPropertyByXmlElement(reader.Name); if (property != null) { property.SetValue(this, reader.ReadElementContentAs(property.PropertyType, null)); } } this is the extension method `GetPropertyByXmlElement(string)` public static PropertyInfo GetPropertyByXmlElement(this PropertyInfo[] properties, string name) { XmlElementAttribute attr = new XmlElementAttribute(name); PropertyInfo property = ( from p in properties where p.GetCustomAttributes().Any(a => a.Equals(attr)) select p)… Read more →