public async Task <IActionResult> GetFriendsList(Models.JQueryDataTableParamModel param)

        {
            using (var txscope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
            {
                try
                {
                    var parameters = CommonMethod.GetJQueryDatatableParamList(param, GetSortingColumnName(param.iSortCol_0));

                    var allList = await _friendsService.GetFriendsList(parameters.Parameters.ToArray());

                    var total = allList.FirstOrDefault()?.TotalRecords ?? 0;
                    return(Json(new
                    {
                        param.sEcho,
                        iTotalRecords = total,
                        iTotalDisplayRecords = total,
                        aaData = allList
                    }));
                }
                catch (Exception ex)
                {
                    ErrorLog.AddErrorLog(ex, "GetFriendsList");
                    return(Json(new
                    {
                        param.sEcho,
                        iTotalRecords = 0,
                        iTotalDisplayRecords = 0,
                        aaData = ""
                    }));
                }
            }
        }
        public async Task <IActionResult> GetUserInSessionFriends()
        {
            try
            {
                Player player = (Player)HttpContext.Items["SessionPlayer"];

                ICollection <Player> friendsList = await _service.GetFriendsList(player.username);

                ICollection <PlayerFriendInfo> response = new List <PlayerFriendInfo>();
                foreach (Player p in friendsList)
                {
                    response.Add(_mapper.Map <PlayerFriendInfo>(p));
                }

                return(Ok(response));
            }
            catch (Exception exc)
            {
                this._logger.LogError(exc, exc.Message);
                return(StatusCode(500));
            }
        }