public ActionResult Edit([Bind(Prefix = "ManualItemData")] ManualItemData model, bool addAnother) { if (ModelState.IsValid) { if (model.ID == 0) { _uow.GetRepo <ManualItemDataRepository>().Add(model); TempData["message"] = "Added new manual item data"; } else { _uow.GetRepo <ManualItemDataRepository>().Update(model); TempData["message"] = "Updated manual item data"; } if (addAnother) { return(RedirectToAction("EditManualItemData", new { addAnother })); } else { return(RedirectToAction("Index")); } } return(View(new EditManualItemDataViewModel().Load(model, _uow, _itemUtils))); }
public EditManualItemDataViewModel Load(ManualItemData manualItemData, UnitOfWork uow, WarframeItemUtilities itemUtils) { ManualItemData = manualItemData; if (ManualItemData == null) { ManualItemData = new ManualItemData(); } if (!string.IsNullOrWhiteSpace(ManualItemData.ItemUniqueName)) { WarframeItem item = itemUtils.GetByUniqueName(ManualItemData.ItemUniqueName); SelectedItemName = item.Name; } PropertyNames = new List <string>(); foreach (PropertyInfo prop in typeof(WarframeItem).GetProperties()) { if (prop.CanRead && prop.CanWrite && prop.Name != "UniqueName" && prop.PropertyType == typeof(string) || prop.PropertyType == typeof(int?) || prop.PropertyType == typeof(double?) || prop.PropertyType == typeof(bool)) { PropertyNames.Add(prop.Name); } } PropertyNames = PropertyNames.OrderBy(x => x).ToList(); return(this); }
public ActionResult Edit(int?id = null, bool addAnother = false) { if (id.HasValue) { ManualItemData data = _uow.GetRepo <ManualItemDataRepository>().GetByID(id.Value); return(View(new EditManualItemDataViewModel().Load(data, _uow, _itemUtils))); } return(View(new EditManualItemDataViewModel().Load(null, _uow, _itemUtils))); }