public async Task <PlayerDetailsResponse> GetPlayer(string PlayerId)
        {
            PlayerResource resource = new PlayerResource();

            try{
                if (string.IsNullOrEmpty(PlayerId))
                {
                    return(new PlayerDetailsResponse("Kindly specify player id"));
                }

                var playerdetails = await _playerRepository.GetPlayerByIdAsync(PlayerId);

                if (playerdetails == null)
                {
                    return(new PlayerDetailsResponse("Kindly specify valid player id"));
                }
                else
                {
                    resource.Name     = playerdetails.Name;
                    resource.PlayerId = PlayerId;
                    resource.Position = playerdetails.Position;
                    // Fetch all players kickings and map object returned to Resource.
                    var kickings = await _kickingService.GetKickingsByPlayerIdAsync(PlayerId);

                    if (kickings != null)
                    {
                        var kickingresource = _mapper.Map <IEnumerable <Kicking>, IEnumerable <KickingResource> >(kickings);
                        resource.kicking = kickingresource;
                    }

                    // Fetch all players rushing.
                    var rushings = await _rushingService.GetRushingsByPlayerIdAsync(PlayerId);

                    if (rushings != null)
                    {
                        var rushingresource = _mapper.Map <IEnumerable <Rushing>, IEnumerable <RushingResource> >(rushings);
                        resource.rushing = rushingresource;
                    }
                    //Fetch all player passing.
                    var passings = await _passingService.GetPassingsByPlayerIdAsync(PlayerId);

                    if (passings != null)
                    {
                        var passingresource = _mapper.Map <IEnumerable <Passing>, IEnumerable <PassingResource> >(passings);
                        resource.passing = passingresource;
                    }
                    //Fetch all player receivings.
                    var receivings = await _receivingService.GetReceivingsByPlayerIdAsync(PlayerId);

                    if (receivings != null)
                    {
                        var receivingresource = _mapper.Map <IEnumerable <Receiving>, IEnumerable <ReceivingResource> >(receivings);
                        resource.receiving = receivingresource;
                    }

                    _logger.LogInformation("Player {@resource} retrieved", resource);
                }
            }
            catch (Exception ex)
            {
            }

            return(new PlayerDetailsResponse(resource));
        }