コード例 #1
0
        protected virtual async Task <EntitySingleResult <TReadModel> > FirstOrDefaultQuery(SingleQuery <TEntity> entityQuery, CancellationToken cancellationToken = default(CancellationToken))
        {
            var command = new EntitySingleQuery <TEntity, TReadModel>(entityQuery, User);
            var result  = await Mediator.Send(command, cancellationToken).ConfigureAwait(false);

            return(result);
        }
コード例 #2
0
        private async Task <PaymentReadModel> PaymentTransaction(Guid attendeeId, Guid oldCourse,
                                                                 Guid newCourse, CancellationToken cancellationToken)
        {
            var search = Query <Data.Entities.PaymentTransaction> .Create(x => x.UserProfileId == attendeeId);

            search = search.And(Query <Data.Entities.PaymentTransaction> .Create(x => x.CourseId == oldCourse));
            var query   = new SingleQuery <Data.Entities.PaymentTransaction>(search);
            var command = new EntitySingleQuery <Data.Entities.PaymentTransaction,
                                                 PaymentReadModel>(query);

            var result = await _mediator.Send(command, cancellationToken).ConfigureAwait(false);

            var map = _mapper.Map <PaymentUpdateModel>(result.Data);

            map.CourseId = newCourse;

            var updatecommand = new EntityUpdateCommand <Guid, PaymentTransaction, PaymentUpdateModel, PaymentReadModel>(result.Data.Id, map, null);
            var output        = await _mediator.Send(updatecommand, cancellationToken).ConfigureAwait(false);

            var historymap    = _mapper.Map <PaymentHistoryCreateModel>(result.Data);
            var createcommand = new EntityCreateCommand <Data.Entities.PaymentTransactionHistory, PaymentHistoryCreateModel, PaymentHistoryReadModel>(historymap, null);
            await _mediator.Send(createcommand, cancellationToken).ConfigureAwait(false);

            return(output);
        }
コード例 #3
0
        protected override async Task <TrainingVideoReadModel> ProcessAsync(TrainingVideoGetCommand <Guid> message,
                                                                            CancellationToken cancellationToken)
        {
            var search = Query <TrainingVideoPic> .Create(x => x.Stream_id == message.Id);

            var query   = new SingleQuery <TrainingVideoPic>(search);
            var command = new EntitySingleQuery <TrainingVideoPic, TrainingVideoReadModel>(query);
            var result  = await Mediator.Send(command, cancellationToken).ConfigureAwait(false);

            return(result.Data);
        }
コード例 #4
0
        private async Task <EntitySingleResult <TrainingBuildCoursesAttendeeReadModel> > GetAttendee(
            MapToCourseCommand <TrainingBuildCoursesAttendeeUpdateModel> message, CancellationToken cancellationToken)
        {
            var search = Query <Data.Entities.TrainingBuildCourseAttendee> .Create(x => x.Id == message.Id);

            search.IncludeProperties = "Course";

            var query   = new SingleQuery <Data.Entities.TrainingBuildCourseAttendee>(search);
            var command = new EntitySingleQuery <Data.Entities.TrainingBuildCourseAttendee,
                                                 TrainingBuildCoursesAttendeeReadModel>(query);

            return(await _mediator.Send(command, cancellationToken).ConfigureAwait(false));
        }