public SampleDataSource()
        {
            var please = MakeAsyncRequest("http://localhost:63174/api/name");
            string namesStr = please.Result;
            var theName = JsonConvert.DeserializeObject<string[]>(namesStr);

            please = MakeAsyncRequest("http://localhost:63174/api/yearoftitle");
            string yearsOfTitlesStr=please.Result;
            var theYearOfTitle = JsonConvert.DeserializeObject<int[,]>(yearsOfTitlesStr);

            int[] titlesCount = CountingTitles(theYearOfTitle);
            int[] winningYears = CalculatingWinningYears(theYearOfTitle);
            int[] yearOfFirstTitle = FindFirstYearWithTitle(theYearOfTitle);
            int[] yearOfLastTitle = FindLastYearWithTitle(theYearOfTitle);
            int[] longestTime = CalculatingLongestTime(theYearOfTitle, titlesCount);
            double[] bonusFromOponents = CalculeteTitlesValueByOponents(theYearOfTitle, yearOfFirstTitle, yearOfLastTitle, titlesCount);

            double[] finalResultBase = CalculatingFinalResultBase(titlesCount, bonusFromOponents);
            string[,] comparationByLongestTimeBetween = CompareByLongestTime(longestTime, theName);
            string[,] comparationByTitlesCount = CompareByTitlesCount(titlesCount, theName);
            string[,] comparationByWinningYearsLength = CompareByWinningYearsLength(winningYears, theName);
            string[,] comparationByTitlesValueByOponent = CompareTitlesValueByOponent(bonusFromOponents, theName);
            string[,] finalResult = CompareByFinalResult(finalResultBase, winningYears, longestTime, titlesCount, bonusFromOponents, theName);

            string[] descriptionString =
            {
                "Stefan Edberg popular with his elegant serve voley tactic, he played three finals on wimbledon against Becker.",
                "Boris Becker youngest Wimbledon open era champion 17 years.",
                "Novak Djockovic the player popular with his retur and sence of humor.",
                "John Newcombe has been popular with frequently coming up with a second-serve ace.",
                "John Mcenroe great sinles player with strange character who has and a lot doubles titles.",
                "Mats Vilander has won three grand slams in 1988 and with the help of Stefan Edber create Sweedish Grand Slam.",
                "Ken Rosewall is the oldest player in open era won a grand slam title Australian open on 37.",
                "Jimmy Connors he holds the record for singles titles in the open era 109.",
                "Ivan Lendl lost his first four grand slam finals but on the fifth create unbelivable comeback agains Mcenroe and win.",
                "Andre Aggasi the player who change the game with his early taking of the boll.",
                "Rod Laver is the only player in open era made Grand Slam !!!",
                "Bjorn Borg retired on age only 26.",
                "Rafael Nadal the only player with 8 grand slams on wan slam French open.",
                "Pete Sampras the player with perfect serve which help him to won 7 Wimbledon titles, equal with Federer.",
                "Roger Federer the record holder with his 17 grand slam titles.",

                // I add this 20 descriptions in case that new player take his fifth title and I have to add for him picture and description.
                // This description will apear before I see for who I have to add discription and add it.
                // I add them this way because I do not know what will hapend in the feature.
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
                "Soon description and Picture for this new big champion will be added.",
            };

            string[] ImageString =
            {
                "Assets/01.StefanEdberg.png",
                "Assets/02.BorisBecker.png",
                "Assets/03.NovakDjockovic.png",
                "Assets/04.JohnNewcombe.png",
                "Assets/05.JohnMcenroe.png",
                "Assets/06.MatsVilander.png",
                "Assets/07.KenRosewall.png",
                "Assets/08.JimmyConnors.png",
                "Assets/09.IvanLendl.png",
                "Assets/10.AndreAggasi.png",
                "Assets/11.RodLaver.png",
                "Assets/12.BjornBorg.png",
                "Assets/13.RafaelNadal.png",
                "Assets/14.PeteSampras.png",
                "Assets/15.RogerFederer.png",

                // I add this 20 same pictures in case that new player take his fifth title and I have to add for him picture and description.
                // This picture will apear before I see for who I have to add picture and add it.
                // I add them this way because I do not know what will hapend in the feature.
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
                "Assets/Logo.png",
            };

            SampleDataGroup[] group = new SampleDataGroup[15];
            for (int i = 0; i < 15; i++)
            {
                group[i] = new SampleDataGroup("Group-" + (i + 1),
                            theName[i],
                            theName[i] + " Grand Slam titles: " + titlesCount[i],
                            ImageString[i],
                            descriptionString[i]);
                for (int j = 0; j < 15; j++)
                {
                    if (i != j)
                    {
                        group[i].Items.Add(new SampleDataItem("Group-" + (i + 1) + "-Item-" + (j + 1),
                                 theName[j],
                                    theName[j] + " Grand Slam titles: " + titlesCount[j],
                                    ImageString[j],
                                    descriptionString[j],
                            comparationByTitlesCount[i, j] +
                            comparationByLongestTimeBetween[i, j] +
                            comparationByWinningYearsLength[i, j] +
                            comparationByTitlesValueByOponent[i, j] +
                            finalResult[i, j],
                                group[i]));
                    }
                }
                this.AllGroups.Add(group[i]);
            }
        }
 public SampleDataItem(String uniqueId, String title, String subtitle, String imagePath, String description, String content, SampleDataGroup group)
     : base(uniqueId, title, subtitle, imagePath, description)
 {
     this._content = content;
     this._group = group;
 }