Esempio n. 1
0
        /// <summary>
        /// Returns a Orchestra object based on the eventOrchestra data passed by the
        /// XElement eventItem element.
        /// </summary>
        /// <param name="node"></param>
        /// <returns></returns>
        public static Orchestra GetOrchestraFromNode(System.Xml.Linq.XElement node)
        {
            System.Xml.Linq.XElement orchestraElement = node.Element(Constants.Orchestra.orchestraElement);
            if (orchestraElement == null || string.IsNullOrEmpty(orchestraElement.GetXElement(Constants.Orchestra.orchestraIDElement)))
            {
                return(null);
            }

            int orchestraID;

            int.TryParse(orchestraElement.GetXElement(Constants.EventRoot + Constants.Orchestra.OrchestraID), out orchestraID);

            Orchestra orchestra = Orchestra.GetOrchestraByID(orchestraID);

            if (!orchestra.IsNew)
            {
                return(orchestra);
            }

            string orchestraName = orchestraElement.GetXElement(Constants.Orchestra.orchestraNameElement);
            string orchestraURL  = orchestraElement.GetXElement(Constants.Orchestra.orchestraURLElement);
            string orchestraNote = orchestraElement.GetXElement(Constants.Orchestra.orchestraNotesElement);

            orchestra = SetOrchestraData(orchestraID, orchestra, orchestraName, orchestraURL, orchestraNote);

            return(orchestra);
        }