Ejemplo n.º 1
0
        public bool LoadCompetition(string path)
        {
            competition.ClearCompetition();
            XmlDocument document = new XmlDocument();

            try
            {
                document.Load(path);
            }
            catch (Exception)
            {
                return(false);
            }

            XPathNavigator    navigator   = document.CreateNavigator();
            XPathNodeIterator disciplines = navigator.Select("/Competition/Discipline");

            XPathNavigator competitionName = navigator.SelectSingleNode("/Competition/CompetitionName");

            competition.CompetitionName = competitionName.Value;

            XPathNavigator competitionLocation = navigator.SelectSingleNode("/Competition/CompetitionLocation");

            competition.CompetitionLocation = competitionLocation.Value;

            XPathNavigator competitionDate = navigator.SelectSingleNode("/Competition/CompetitionDate");

            competition.CompetitionDate = competitionDate.Value;

            foreach (XPathNavigator d in disciplines)
            {
                XPathNavigator nav  = d.SelectSingleNode("DisciplineName");
                Discipline     disc = new Discipline(nav.Value);

                XPathNodeIterator results = d.Select("Result");

                foreach (XPathNavigator r in results)
                {
                    XPathNavigator nav2 = r.SelectSingleNode("Player");
                    XPathNavigator nav3 = r.SelectSingleNode("PlayerResult");
                    Result         res  = new Result(nav2.Value, nav3.Value);
                    disc.AddResult(res);
                }
                competition.AddDiscipline(disc);
            }
            Console.WriteLine("Odczytałem z pliku dane");
            return(true);
        }