public override async Task <SelectReply> Union(UnionRequest request, ServerCallContext context) { try { var data = await _tableDal.Union(request.FirstTableName, request.DbName, new List <string> { request.SecondTableName }); var response = new SelectReply() { Code = 200 }; Parallel.ForEach(data.data, (row) => { var resultRow = new Row(); resultRow.Items.AddRange(row.Select(x => x.ToString())); response.Rows.Add(resultRow); }); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("***************************************************************************************************************"); Console.WriteLine($"Union tables {request.FirstTableName} and {request.SecondTableName}"); Console.WriteLine("***************************************************************************************************************"); return(response); } catch (Exception ex) { return(new SelectReply() { Code = 400, Message = ex.Message, StackTrace = ex.StackTrace }); } }
public override async Task <SelectReply> Select(SelectRequest request, ServerCallContext context) { try { var requestSelect = new RequestHelper.SelectRequest { Offset = request.Offset, Top = request.Top, Conditions = request.Conditions .ToDictionary(x => x.Key, x => _grpcModelMapper.GetValidatorsDtoFromGrpcValidators(x.Value)) }; var data = await _tableDal.Select(request.TableName, request.DbName, requestSelect); var response = new SelectReply() { Code = 200 }; Parallel.ForEach(data.data, (row) => { var resultRow = new Row(); resultRow.Items.AddRange(row.Select(x => x.ToString())); response.Rows.Add(resultRow); }); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("***************************************************************************************************************"); Console.WriteLine("Rows selected: " + request.TableName); Console.WriteLine("***************************************************************************************************************"); return(response); } catch (Exception ex) { return(new SelectReply() { Code = 400, Message = ex.Message, StackTrace = ex.StackTrace }); } }