Пример #1
0
        public async Task <IActionResult> Index(GetEventListInput input)
        {
            var output = await _eventAppService.GetListAsync(input);

            var model = new IndexViewModel(output.Items)
            {
            };

            return(View(model));
        }
Пример #2
0
        public async Task <ListResultDto <EventListDto> > GetList(GetEventListInput input)
        {
            var events = await _eventRepository
                         .GetAll()
                         .Include(e => e.Registrations)
                         .WhereIf(!input.IncludeCanceledEvents, e => !e.IsCancelled)
                         .OrderByDescending(e => e.CreationTime)
                         .ToListAsync();

            return(new ListResultDto <EventListDto>(events.MapTo <List <EventListDto> >()));
        }
Пример #3
0
        public async Task <ListResultDto <EventListDto> > GetListAsync(GetEventListInput input)
        {
            var events = await _eventRepository
                         .GetAll()
                         .Include(e => e.Registrations)
                         .WhereIf(!input.IncludeCanceledEvents, e => !e.IsCancelled)
                         .OrderByDescending(e => e.CreationTime)
                         .Take(64)
                         .ToListAsync();

            var exts = await _extension.GetByAsync(events.Select(e => e.Id).ToArray());

            // TODO: Merge
            //var dtos = events.MapTo<List<EventListDto>>();
            //var dtos = (from e in events
            //            select new
            //            {
            //                e.Title,
            //                e.Description,
            //                e.Date,
            //                e.IsCancelled,
            //                e.MaxRegistrationCount,
            //                e.Registrations
            //            }).ToList().MapTo<List<EventListDto>>();
            //var dtos = (from e in events select e).ToList().MapTo<List<EventListDto>>();

            //var dtos = (from evt in events.MapTo<List<EventListDto>>()
            //            let ext = exts.FirstOrDefault(e => e.ExternalId == evt.Id)
            //            let mod = evt.Location = ext.Location
            //            select evt).ToList();
            var dtos = events.MapTo <List <EventListDto> >().Select(dto => {
                var loc      = exts.FirstOrDefault(e => e.ExternalId == dto.Id);
                dto.Location = loc?.Location;
                return(dto);
            }).ToList();

            return(new ListResultDto <EventListDto>(dtos));
        }