public ActionResult AddSegment(int Id) { var viewModel = new SegmentViewModel(); var experiment = experimentRepository.Get(Id); viewModel.ExperimentName = experiment.Name; viewModel.Variables = experiment.Variables; viewModel.ExperimentId = experiment.Id; return View(viewModel); }
public ActionResult AddSegment(SegmentViewModel viewModel) { var experiment = experimentRepository.Get(viewModel.ExperimentId); try { if (ModelState.IsValid) { viewModel.Segment.CreatedBy = HttpContext.User.Identity.Name; viewModel.Segment.Variables = new Dictionary<string, string>(); viewModel.Segment.ExperimentId = viewModel.ExperimentId; foreach(var variable in experiment.Variables) { var varValue = Request["prop-" + variable]; if (!string.IsNullOrEmpty(varValue)) { viewModel.Segment.Variables.Add(variable, varValue); } } viewModel.Segment = experimentRepository.AddSegment(viewModel.Segment); return Redirect("/Experiments/Update?Id=" + experiment.Id); } else { ViewBag.ErrorMessage = "There is a problem with one of your responses."; } } catch (Exception ex) { ViewBag.ErrorMessage = "An Error Occurred while attempting to save that segment."; } viewModel.ExperimentName = experiment.Name; viewModel.Variables = experiment.Variables; viewModel.ExperimentId = experiment.Id; return View(viewModel); }
public ActionResult UpdateSegment(int experimentId, int segmentId) { var viewModel = new SegmentViewModel(); var experiment = experimentRepository.Get(experimentId); var segment = experiment.Segments.FirstOrDefault(a => a.Id == segmentId); viewModel.Segment = segment; viewModel.ExperimentName = experiment.Name; viewModel.Variables = experiment.Variables; viewModel.ExperimentId = experiment.Id; return View(viewModel); }