public async Task <ApiResponse> GetAllUserByFiltersAsync(FilterRequest request) { var _apiResponse = new ApiResponse(); var _param = new DynamicParameters(); _param.Add("@oSkip", request.Skip, DbType.Int32); _param.Add("@oTake", request.Take, DbType.Int32); _param.Add("@oSearchType", request.SearchType, DbType.Int32); _param.Add("@oSearchText", request.SearchText, DbType.String); _param.Add("@oSearchCol", request.SearchCol, DbType.String); _param.Add("@oSortCol", request.SortCol, DbType.String); _param.Add("@oSortDir", request.SortDir, DbType.String); _param.Add("@oMessage", null, DbType.String, ParameterDirection.Output); _param.Add("@oStatus", 0, DbType.Int16, ParameterDirection.Output); using (var gridReader = Task.FromResult(await _dapperService.GetMultipleAsync("API_GetAllUserByFilters", _param, CommandType.StoredProcedure)).Result) { _apiResponse.Data = gridReader.Read <User>().ToList(); _apiResponse.TotalRecord = gridReader.Read <Int32>().FirstOrDefault(); } _apiResponse.Message = _param.Get <string>("oMessage"); _apiResponse.Status = _param.Get <Int16>("oStatus") == 1 ? true : false; return(_apiResponse); }