public override XmlReader OpenReader() { lock (this) { if (reader == null) throw new Exception("The XmlReader has already been opened once and cannot be reset."); XmlReader r = reader; reader = null; return r; } }