private void Handle(GetFilterPlayersRequest request) { if (request.Text == null) { request.Text = String.Empty; } try { var notDeleted = new GetPlayersNotDeletedSpecifications(); var players = _playerRepo.Find(notDeleted).Select(x => new GetPlayerItem(x.Id, x.FirstName, x.LastName, x.NickName, x.Age, x.Sex, x.IsDeleted)).OrderBy(x => x.FirstName); var response = new GetFilterPlayersResponse(players.Where(x => x.Id.Contains(request.Text) || x.FirstName.Contains(request.Text) || x.LastName.Contains(request.Text) || x.NickName.Contains(request.Text) || Convert.ToString(x.Age).Contains(request.Text) || Convert.ToString(x.Sex).Contains(request.Text))); Sender.Tell(response); _logger.Info("Get filter Players by: {0}", request.Text); } catch (Exception ex) { _logger.Error("Could't get filter Players: {0}", ex.Message); throw; } }
public async Task <GetFilterPlayersResponse> GetFilterPlayers(string text) { var request = new GetFilterPlayersRequest(text); return(await _playerActor.Ask <GetFilterPlayersResponse>(request)); }