public static ServerGroupStructureNode[] GetServerGroup(string xmlString)
        {
            XmlTextReader xmlTextReader = new XmlTextReader(xmlString, XmlNodeType.Element, new XmlParserContext(null, null, "", XmlSpace.Default, Encoding.Unicode));

            ServerGroupStructureNode[] result;
            try
            {
                XmlSerializer xmlSerializer         = new XmlSerializer(typeof(XmlSerializationServerGroups));
                XmlSerializationServerGroups target = xmlSerializer.Deserialize(xmlTextReader) as XmlSerializationServerGroups;
                result = target;
            }
            finally
            {
                xmlTextReader.Close();
            }
            return(result);
        }
 public static void UpdateAuthority(XmlSerializationServerGroups.XmlSerializationServerGroup parent)
 {
     if (parent != null && parent.ServerGroup != null)
     {
         foreach (XmlSerializationServerGroups.XmlSerializationServerGroup xmlSerializationServerGroup in parent.ServerGroup)
         {
             if (xmlSerializationServerGroup.ServerGroupAuthority > parent.ServerGroupAuthority)
             {
                 xmlSerializationServerGroup.ServerGroupAuthority = parent.ServerGroupAuthority;
             }
             if (xmlSerializationServerGroup.ServerGroup != null)
             {
                 XmlSerializationServerGroups.UpdateAuthority(xmlSerializationServerGroup);
             }
         }
     }
 }