Пример #1
0
        private async Task <IReadOnlyCollection <SessionInstructorModel> > LoadAdditionalInstructors()
        {
            var dropdownQuery = new SessionInstructorQuery(User, Id);
            var items         = await Mediator.Send(dropdownQuery);

            return(items);
        }
        protected override async Task <IReadOnlyCollection <SessionInstructorModel> > Process(SessionInstructorQuery request, CancellationToken cancellationToken)
        {
            var query = DataContext.SessionInstructors
                        .AsNoTracking()
                        .Where(s => s.SessionId == request.SessionId);

            var result = await query
                         .Select(s => new SessionInstructorModel
            {
                SessionId    = s.SessionId,
                InstructorId = s.InstructorId,
                DisplayName  = s.Instructor.DisplayName,
                FamilyName   = s.Instructor.FamilyName,
                GivenName    = s.Instructor.GivenName
            })
                         .OrderBy(s => s.DisplayName)
                         .ToListAsync(cancellationToken);

            return(result);
        }