public void FromSaveFormat(string contents)
        {
            ConnectionName = "";
            DatabaseName   = "";
            CollectionName = "";
            QueryMode      = "";

            var xmlDoc = ConvertToXmlDocument(contents);

            if (xmlDoc != null && xmlDoc.DocumentElement.Name.ToLower() == "query")
            {
                QueryText = xmlDoc.DocumentElement.InnerText;

                var dataNode = (from XmlNode x in xmlDoc.DocumentElement.ChildNodes
                                where x.Name == "Settings"
                                select x).FirstOrDefault();
                if (dataNode != null)
                {
                    ConnectionName = dataNode.Attributes["ConnectionName"].InnerText;
                    DatabaseName   = dataNode.Attributes["DatabaseName"].InnerText;
                    CollectionName = dataNode.Attributes["CollectionName"].InnerText;
                    QueryMode      = dataNode.Attributes["Mode"].InnerText;
                    if (QueryMode.ToLower().Contains("statements") && !QueryMode.ToLower().Contains("c$"))
                    {
                        QueryMode = MongoSharpQueryMode.CSharpStatements;
                    }
                }
            }
            else
            {
                QueryText = contents;
            }
        }