public IHttpActionResult Read(VentasRequest ventasRequest) { var error = string.Empty; var data = new List <VentasRow>(); try { var regiones = ventasRequest.Region.Split(Auxiliar.ListSeparator).ToList(); var tasks = new List <Task <VentasResponse> >(); foreach (var region in regiones) { try { var unidadNeg = RepositoryByBusiness(region.ToUnidadNegocioByCountry()); tasks.Add(new Task <VentasResponse>(() => { var ventasOper = _ventaCollection[unidadNeg].GetVentasCT(ventasRequest); return(new VentasResponse() { Region = region, CodigoRetorno = ventasOper[OutParameter.CodigoError].ToString(), MensajeRetorno = ventasOper[OutParameter.MensajeError].ToString(), VentaRowList = (IEnumerable <VentasRow>)ventasOper[OutParameter.CursorVentas] }); })); } catch { } } tasks.ForEach(t => t.Start()); Task.WaitAll(tasks.ToArray()); var result = new List <object>(); tasks.ForEach(t => { result.Add(new { t.Result.Region, t.Result.CodigoRetorno, t.Result.MensajeRetorno }); data.AddRange(t.Result.VentaRowList); // Agrega lista }); return(Ok(new { result, data })); } catch (Exception ex) { error = ex.Message; return(InternalServerError(ex)); } finally { (new { Error = error, Body = ventasRequest }).TryWriteLogObject(_logFileManager, _clientFeatures); } }
private void button1_Click(object sender, EventArgs e) { //lbRespuesta.Text = ""; string url = "http://192.168.0.8/API/post.php"; VentasRequest objProducto = new VentasRequest(); objProducto.nombre_cliente = txt1.Text; objProducto.doc_cliente = Int32.Parse(txt2.Text); objProducto.nombre_paquete = txt3.Text; objProducto.cantidad_dias = Int32.Parse(text4.Text); objProducto.total = Int32.Parse(text5.Text); objProducto.nombre_usuario = text6.Text; objProducto.fecha = text7.Text; string resultado = Send <VentasRequest>(url, objProducto, "POST"); //lbRespuesta.Text = resultado; }