Example #1
0
        public override string ToString()
        {
            var s = GDGMeetup.ToString();

            foreach (GDGTag t in Tags)
            {
                s += t.ToString() + "\n";
            }
            return(s);
        }
        public async Task <ActionResult <IEnumerable <GDGMeetup> > > PopulateDbWithMockData()
        {
            var meetups = new List <GDGMeetup>();
            var tags    = new List <GDGTag>();
            int i;

            var meetup = new GDGMeetup()
            {
                Content = "MockData", SpeakerName = "Blue Meadow", MeetupId = "265177852", Upcoming = false
            };

            var tag1 = new GDGTag()
            {
                TagString = "tag1"
            };
            var tag2 = new GDGTag()
            {
                TagString = "tag2"
            };
            var tag3 = new GDGTag()
            {
                TagString = "tag3"
            };

            meetup.MeetupTags = new List <MeetupTag> {
                new MeetupTag()
                {
                    GDGTag = tag1, GDGMeetup = meetup
                }
            };
            meetup.MeetupTags.Add(new MeetupTag()
            {
                GDGTag = tag2, GDGMeetup = meetup
            });
            meetup.MeetupTags.Add(new MeetupTag()
            {
                GDGTag = tag3, GDGMeetup = meetup
            });

            _context.Meetups.Add(meetup);

            await _context.SaveChangesAsync();

            return(NoContent());
        }
        public async Task <ActionResult <IEnumerable <MeetupDTO> > > PopulateDb()
        {
            var meetups = _context.Meetups.OrderByDescending(m => m.Id).ToList();

            if (!meetups.Any())
            {
                var events = (await MeetupApi.Events.Events("GDG-Le-Mans", "upcoming,past", CancellationToken.None)).results;

                await CheckDbAPIConsistency(events, meetups);

                List <MeetupDTO> meetupList = new List <MeetupDTO>();

                if (events.Any())
                {
                    foreach (Event e in events)
                    {
                        GDGMeetup     m    = meetups.Find(m => m.MeetupId.Equals(e.Id));
                        List <GDGTag> tags = new List <GDGTag>();

                        if (m.MeetupTags != null)
                        {
                            foreach (MeetupTag mt in m.MeetupTags)
                            {
                                var tag = _context.Tags.ToList().Find(t => t.Id == mt.GDGTagId);
                                tags.Add(new GDGTag()
                                {
                                    Id = tag.Id, TagString = tag.TagString
                                });
                            }
                        }

                        meetupList.Add(new MeetupDTO
                        {
                            Event     = e,
                            GDGMeetup = m,
                            Tags      = tags
                        });
                    }
                }

                return(meetupList);
            }

            return(NoContent());
        }