コード例 #1
0
        public Task <ContinentViewModel> Handle(GetContinentByNameQuery request, CancellationToken cancellationToken)
        {
            var requestName = request.Name;

            return(_repository.GetContinentByName(requestName)
                   .ContinueWith(fetchTask =>
            {
                GuardAgainst.FaultedOrCancelled(fetchTask);
                var model = fetchTask.Result;
                if (model == null)
                {
                    throw new NotFoundException($"{nameof(requestName)} not found");
                }
                return _mapper.Map <ContinentViewModel>(model);
            }, cancellationToken));
        }