public virtual ActionResult Edit(dynamic id, string returnUrl) { id = DynamicEntitySearcher.DynamicEntityMetadata.ParseKeyType(id); var model = DynamicRepository.GetItem(DynamicEntitySearcher.DynamicEntityMetadata.EntityMetadata.EntityType, DynamicEntitySearcher.DynamicEntityMetadata.KeyName(), id, DynamicEntitySearcher.DynamicEntityMetadata.GetInstanceIncludes().ToArray()); var viewModel = new DynamicEditViewModel(DynamicEntitySearcher.DynamicEntityMetadata, model, RequestManager.QueryStringDictionary, returnUrl); return(ControllerManager.View("DynamicEdit", viewModel)); }
public virtual ActionResult Edit(dynamic id, FormCollection formCollection, string returnUrl) { id = DynamicEntitySearcher.DynamicEntityMetadata.ParseKeyType(id); var model = DynamicRepository.GetItem(DynamicEntitySearcher.DynamicEntityMetadata.EntityMetadata.EntityType, DynamicEntitySearcher.DynamicEntityMetadata.KeyName(), id, DynamicEntitySearcher.DynamicEntityMetadata.GetInstanceIncludes().ToArray()); var viewModel = new DynamicEditViewModel(DynamicEntitySearcher.DynamicEntityMetadata, model, RequestManager.QueryStringDictionary, returnUrl); if (ControllerManager.TryUpdateModel(viewModel.Item, "Item")) { DynamicEntitySearcher.DynamicEntityMetadata.InvokeMethods <DynamicMethodPreSaveEditAttribute>(model); DynamicRepository.SaveChanges(); if (!string.IsNullOrWhiteSpace(returnUrl)) { return(ControllerManager.Redirect(returnUrl)); } return(ControllerManager.RedirectToAction("Index", DynamicEntitySearcher.DynamicEntityMetadata.EntityMetadata.TypeName, new { typeName = DynamicEntitySearcher.DynamicEntityMetadata.EntityMetadata.TypeName })); } return(ControllerManager.View("DynamicEdit", viewModel)); }
public DynamicEditViewModel Build(DynamicEntityMetadata dynamicEntityMetadata, dynamic editModel, string returnUrl) { var dynamicEditViewModel = new DynamicEditViewModel(); dynamicEditViewModel.Header = dynamicEntityMetadata.EditHeader(); dynamicEditViewModel.TypeName = dynamicEntityMetadata.TypeName(); dynamicEditViewModel.ReturnUrl = returnUrl; dynamicEditViewModel.Item = editModel; dynamicEditViewModel.DynamicUIMethods = dynamicEntityMetadata.GetDynamicMethods(TemplateTypeEnum.Edit).ToList(); foreach (var dynamicPropertyViewModel in GetDynamicPropertyViewModels(dynamicEntityMetadata, editModel)) { var dynamicEditorViewModel = new DynamicEditorViewModel(); dynamicEditorViewModel.ViewModelPropertyName = dynamicPropertyViewModel.ViewModelPropertyName; dynamicEditorViewModel.DynamicEditorName = dynamicPropertyViewModel.DynamicEditorName; dynamicEditorViewModel.DynamicPropertyEditorViewModel = dynamicPropertyViewModel; dynamicEditViewModel.DynamicEditorViewModels.Add(dynamicEditorViewModel); } return(dynamicEditViewModel); }
public virtual ActionResult Edit(dynamic id, FormCollection formCollection, string returnUrl) { id = DynamicEntitySearcher.DynamicEntityMetadata.ParseKeyType(id); var model = DynamicRepository.GetItem(DynamicEntitySearcher.DynamicEntityMetadata.EntityMetadata.EntityType, DynamicEntitySearcher.DynamicEntityMetadata.KeyName(), id, DynamicEntitySearcher.DynamicEntityMetadata.GetInstanceIncludes().ToArray()); var viewModel = new DynamicEditViewModel(DynamicEntitySearcher.DynamicEntityMetadata, model, RequestManager.QueryStringDictionary, returnUrl); if (ControllerManager.TryUpdateModel(viewModel.Item, "Item")) { DynamicEntitySearcher.DynamicEntityMetadata.InvokeMethods<DynamicMethodPreSaveEditAttribute>(model); DynamicRepository.SaveChanges(); if (!string.IsNullOrWhiteSpace(returnUrl)) return ControllerManager.Redirect(returnUrl); return ControllerManager.RedirectToAction("Index", DynamicEntitySearcher.DynamicEntityMetadata.EntityMetadata.TypeName, new { typeName = DynamicEntitySearcher.DynamicEntityMetadata.EntityMetadata.TypeName }); } return ControllerManager.View("DynamicEdit", viewModel); }
public virtual ActionResult Edit(dynamic id, string returnUrl) { id = DynamicEntitySearcher.DynamicEntityMetadata.ParseKeyType(id); var model = DynamicRepository.GetItem(DynamicEntitySearcher.DynamicEntityMetadata.EntityMetadata.EntityType, DynamicEntitySearcher.DynamicEntityMetadata.KeyName(), id, DynamicEntitySearcher.DynamicEntityMetadata.GetInstanceIncludes().ToArray()); var viewModel = new DynamicEditViewModel(DynamicEntitySearcher.DynamicEntityMetadata, model, RequestManager.QueryStringDictionary, returnUrl); return ControllerManager.View("DynamicEdit", viewModel); }