public void ReadXml(XmlReader reader) { do { reader.ReadStartElement("LogProperty"); //Create new LogDetailInfo object var logDetail = new LogDetailInfo(); //Load it from the Xml logDetail.ReadXml(reader); //Add to the collection Add(logDetail); } while (reader.ReadToNextSibling("LogProperty")); }