public ActionResult Index(Home model) { var homeModel = BuildModel(); homeModel.Sql = model.Sql; var dto = new CheckRules { Sql = model.Sql, Rules = new List<RuleModel>()}; if (model.SelectedRules != null) { foreach (string ruleId in model.SelectedRules) { dto.Rules.Add(new RuleModel { Id = ruleId, Namespace = "SqlCop.Rules" }); var item = homeModel.AllRules.SingleOrDefault(s => s.Id == ruleId); if (item != null) item.Selected = true; } } List<SqlCop.ServiceModel.RuleProblem> response = null; try { response = _client.Post(dto); } catch (WebServiceException ex) { homeModel.ErrorDescription = ex.ErrorMessage; } if (response != null && response.Any()) { homeModel.Problems = response; } else { homeModel.SuccessMessage = "No rule violations found"; } return View(homeModel); }
private Home BuildModel() { IList<RuleModel> rules = _client.Get(new GetRules { }); var modelRules = Mapper.Map<IList<RuleModel>, IList<SqlCop.DemoClient.ViewModels.Rule>>(rules); var model = new Home { AllRules = modelRules }; return model; }