public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) { var model = new StackSearchModel(); model.Numbers = new List <double>(); var doubles = controllerContext.HttpContext.Request.Form["Numbers"] .Split(",".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); var sum = controllerContext.HttpContext.Request.Form["SearchSum"]; string validSum = sum.Replace('.', ','); double outerSum; if (double.TryParse(validSum, out outerSum)) { model.SearchSum = outerSum; } foreach (var item in doubles) { double tmp; string dbl = item.Replace('.', ','); if (double.TryParse(dbl, out tmp)) { model.Numbers.Add(tmp); } } return(model); }
public JsonResult StackSearch(StackSearchModel model) { if (ModelState.IsValid) { try { var service = new StackSearchService(); model.Pairs = service.GetPairFor(model.Numbers.ToArray(), model.SearchSum); return(Json(new { ok = true, resultHtml = this.RenderPartialViewToString("_StackSearchResult", model) })); } catch (Exception e) { return(Json(new { ok = false, errormessage = e.Message })); } } else { return(Json(new { ok = false, errormessage = "Неверные значения" })); } }