Пример #1
0
        public async Task <IEnumerable <Tourn> > GetTournsAsync(int?parentId)
        {
            List <Tourn> tourns;

            if (!parentId.HasValue)
            {
                tourns = (await _rootParser.GetTourns(BaseUrl + @"/tour")).ToList();
            }
            else
            {
                var url = _tournsRepository.GetUrl(parentId);
                var xml = await _loader.GetXml(BaseUrl + @"/tour/" + url);

                tourns = _tournListParser.GetTourns(xml).ToList();
            }
            foreach (var tourn in tourns)
            {
                tourn.ParentId       = parentId;
                tourn.HasChildTourns = true;
                //tourn.Loaded = DateTime.Now;
                if (string.IsNullOrEmpty(tourn.SourceId))
                {
                    tourn.SourceId = tourn.Url;
                }
            }
            _tournsRepository.SaveTourns(tourns, parentId);

            return(_agent.GetTourns(parentId));
        }