public async Task <Unit> Handle(ShowEmailCommand command, CancellationToken cancellationToken) { _logger.LogDebug($"Handle ShowEmailCommand:{JsonConvert.SerializeObject(command)}"); var playerId = command.PlayerId; var pageIndex = command.PageIndex; var queryEmail = await _emailDomainService.GetAll(); var queryPlayerEmail = await _playerEmailDomainService.Query(); var query = from email in queryEmail join playerEmail in queryPlayerEmail on email.Id equals playerEmail.EmailId where playerEmail.PlayerId == playerId && playerEmail.Status != EmailStatusEnum.除 select new PlayerEmailModel { Id = playerEmail.Id, PlayerId = playerEmail.PlayerId, Status = playerEmail.Status, CreateDate = playerEmail.CreateDate.ToFriendlyTime(), EmailId = playerEmail.EmailId, ExpiryDate = playerEmail.ExpiryDate, Title = email.Title, Content = email.Content }; Paging <PlayerEmailModel> paging = await query.Paged(pageIndex); _logger.LogDebug($"Handle ShowEmailCommand Result:{JsonConvert.SerializeObject(paging)},{JsonConvert.SerializeObject(paging.Data)},{paging.Count},{paging.PageCount},{paging.PageIndex}"); await _mudProvider.ShowEmail(playerId, paging); return(Unit.Value); }