private Article PrepareArticleViewModelToUpdate(ArticleCreateViewModel viewModel) { var articleIds = !string.IsNullOrEmpty(viewModel.PlacesIdsString) ? viewModel.PlacesIdsString.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries) : null; var articleObj = viewModel.TransformToArticle(); foreach (var id in articleIds) { var place = new Place { PlaceId = int.Parse(id) }; if(articleObj.Places == null) articleObj.Places = new List<Place>(); articleObj.Places.Add(place); } return articleObj; }
public ActionResult Edit(ArticleCreateViewModel model) { if (ModelState.IsValid) { var articleIds = !string.IsNullOrEmpty(model.PlacesIdsString) ? model.PlacesIdsString.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries) : null; var articleObj = model.TransformToArticle(); foreach (var id in articleIds) { var place = new Place { PlaceId = int.Parse(id) }; if (articleObj.Places == null) articleObj.Places = new List<Place>(); articleObj.Places.Add(place); } var response = _articleManager.EditArticle(articleObj); if (response.Success) { TempData[Constants.TempdataKeys.EditArticleSuccessKey] = true; return RedirectToAction("Index"); } else { ModelState.AddModelErrors("", response.Messages); } } return RedirectToAction("Edit"); }