/// <summary>
        /// Tries to read element from XML.
        /// </summary>
        /// <param name="reader">The reader.</param>
        /// <returns>True if element was read.</returns>
        internal override bool TryReadElementFromXml(EwsServiceXmlReader reader)
        {
            switch (reader.LocalName)
            {
                case XmlElementNames.ConversationId:
                    this.ConversationId = new ConversationId();
                    this.ConversationId.LoadFromXml(reader, XmlElementNames.ConversationId);
                    return true;

                case XmlElementNames.SyncState:
                    this.SyncState = reader.ReadElementValue();
                    return true;

                case XmlElementNames.ConversationNodes:
                    this.ConversationNodes = new ConversationNodeCollection(this.propertySet);
                    this.ConversationNodes.LoadFromXml(reader, XmlElementNames.ConversationNodes);
                    return true;

                default:
                    return false;
            }
        }
    bool TryReadElementFromXml(EwsServiceXmlReader reader)
    {
        switch (reader.LocalName)
        {
        case XmlElementNames.ConversationId:
            this.ConversationId = new ConversationId();
            this.ConversationId.LoadFromXml(reader, XmlElementNames.ConversationId);
            return(true);

        case XmlElementNames.SyncState:
            this.SyncState = reader.ReadElementValue();
            return(true);

        case XmlElementNames.ConversationNodes:
            this.ConversationNodes = new ConversationNodeCollection(this.propertySet);
            this.ConversationNodes.LoadFromXml(reader, XmlElementNames.ConversationNodes);
            return(true);

        default:
            return(false);
        }
    }