/// <summary>
 /// Handles a request
 /// </summary>
 /// <param name="request">The request</param>
 /// <param name="cancellationToken">Cancellation token</param>
 /// <returns>
 /// Response from the request
 /// </returns>
 public async Task <List <Stories> > Handle(GetStoryByUserIdQuery request, CancellationToken cancellationToken)
 {
     try
     {
         return(await repository.Stories.GetStoriesByUserId(request.UserId));
     }
     catch (Exception ex)
     {
         logger.Error(ex, "Exception in method 'GetStoriesByUserIdHandler()'");
         return(new List <Stories>());
     }
 }
Пример #2
0
        /// <summary>
        /// Updates the user name in stories.
        /// </summary>
        /// <param name="updateUserFullNameModel">The update user full name model.</param>
        public async Task UpdateUserNameInStories(UpdateUserFullNameModel updateUserFullNameModel)
        {
            using var scope = serviceScopeFactory.CreateScope();
            var mediator = scope.ServiceProvider.GetRequiredService <IMediator>();

            var getStoriesByUserIdQuery = new GetStoryByUserIdQuery(updateUserFullNameModel.Id);
            var stories = await mediator.Send(getStoriesByUserIdQuery);

            if (stories != null && stories.Any())
            {
                stories.ForEach(x => x.Author = $"{updateUserFullNameModel.FirstName} {updateUserFullNameModel.LastName}");
            }

            var updateStoriesCommand = new UpdateStoriesByUserIdCommand(updateUserFullNameModel.Id, stories);
            var response             = await mediator.Send(updateStoriesCommand);
        }