async Task IDataInjector.SetPasosDia(Ekilibrate.Model.Entity.Participante.clsPasosDiaApp Data) { using (var scope = Ekilibrate.Data.Access.Common.ContainerConfig.ProxyContainer.BeginLifetimeScope("a")) { try { var objController = new Ekilibrate.BL.Controller.Participante.clsPasosDia(scope); var objRetriever = new Ekilibrate.BL.DataRetriever.Participante.clsPasosDia(scope); Ekilibrate.Model.Entity.Participante.clsPasosDiaBase DataPasos = await objRetriever.GetPasosDia(Data.UserId, Data.Date); if (DataPasos.ParticipanteId == 0) { DataPasos = new Ekilibrate.Model.Entity.Participante.clsPasosDiaBase(); await objController.Create(DataPasos); } else { DataPasos.Caminados = Data.Steps; await objController.Update(DataPasos); } var DBContext = scope.Resolve <DBTrnContext>(); DBContext.CommitTransaction(); } catch (FaultException ex) { throw ex; } catch (Exception) { throw new FaultException("Error al registrar los datos de pasos por dia."); } } }
public async Task <ActionResult> SetPasos() { using (var scope = EkilibrateUI.Autofac.ContainerConfig.ProxyContainer.BeginLifetimeScope()) { Stream req = Request.InputStream; req.Seek(0, System.IO.SeekOrigin.Begin); string json = new StreamReader(req).ReadToEnd(); Ekilibrate.Model.Entity.Participante.clsPasosDiaApp input = null; try { var format = "yyyy/MM/dd"; // your datetime format var dateTimeConverter = new IsoDateTimeConverter { DateTimeFormat = format }; // assuming JSON.net/Newtonsoft library from http://json.codeplex.com/ input = JsonConvert.DeserializeObject <Ekilibrate.Model.Entity.Participante.clsPasosDiaApp>(json, dateTimeConverter); if (input == null) { throw new Exception(); } } catch (Exception ex) { // Try and handle malformed POST body return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Ekilibrate.Model.Entity.Participante.clsPasosDiaFiltro objFiltro = new Ekilibrate.Model.Entity.Participante.clsPasosDiaFiltro(); var middleTier = scope.Resolve <Ekilibrate.Model.Services.Participante.IDataInjector>(); await middleTier.SetPasosDia(input); return(new HttpStatusCodeResult(HttpStatusCode.OK)); //return "OK"; } }