public void ReadXml(XmlReader reader) { int i = 0; while (reader.Read()) { if (reader.IsStartElement()) { Type type = Type.GetType(this.GetType().Namespace + "." + reader.Name); IBuildable element = (IBuildable)Activator.CreateInstance(type); element.ReadXml(reader); if (i == 0) { first = element; } else { second = element; } i++; } else if (reader.NodeType == XmlNodeType.EndElement & reader.Name == this.GetType().Name) { return; } } }
public void ReadXml(XmlReader reader) { while (reader.Read()) { if (reader.IsStartElement()) { Type type = Type.GetType(this.GetType().Namespace + "." + reader.Name); content = (IBuildable)Activator.CreateInstance(type); content.ReadXml(reader); } else if (reader.NodeType == XmlNodeType.EndElement & reader.Name == this.GetType().Name) { return; } } }
public void ReadXml(XmlReader reader) { List <IBuildable> tempContent = new List <IBuildable>(); while (reader.Read()) { if (reader.IsStartElement()) { Type type = Type.GetType(this.GetType().Namespace + "." + reader.Name); IBuildable element = (IBuildable)Activator.CreateInstance(type); tempContent.Add(element); element.ReadXml(reader); } else if (reader.NodeType == XmlNodeType.EndElement & reader.Name == this.GetType().Name) { contents = tempContent.ToArray(); return; } } }
public void ReadXml(XmlReader reader) { expression.ReadXml(reader); }