Exemple #1
0
        public virtual async Task <ActionResult> Details(dynamic id, FormCollection formCollection, string submitType, string returnUrl)
        {
            id = ParseKeyType(id);
            var model     = _dynamicRepository.GetItem(EntityType, KeyName, id, DynamicEntityMetadata.InstanceIncludes().ToArray());
            var viewModel = DynamicDetailsViewModelBuilder.Build(DynamicEntityMetadata, model);

            if (await TryUpdateModelAsync <DynamicCreateViewModel>(viewModel.Item, "Item"))
            {
                var dynamicOperation = DynamicEntityMetadata.GetDynamicOperation(TemplateTypeEnum.Details, submitType);
                dynamicOperation.PerformPreSaveOperation(id, formCollection, model, ref returnUrl, TempData, ViewData);

                if (dynamicOperation.PersistModel)
                {
                    EditItem(model);
                }

                dynamicOperation.PeformPostSaveOperation(id, formCollection, model, ref returnUrl, TempData, ViewData);

                if (dynamicOperation.ReturnSucessfulRedirect)
                {
                    return(ReturnSuccessfulRedirect(returnUrl, model));
                }
            }
            return(View("DynamicDetails", viewModel));
        }
Exemple #2
0
        public virtual ActionResult Details(dynamic id)
        {
            id = ParseKeyType(id);
            var model     = _dynamicRepository.GetItem(EntityType, KeyName, id, DynamicEntityMetadata.InstanceIncludes().ToArray());
            var viewModel = DynamicDetailsViewModelBuilder.Build(DynamicEntityMetadata, model);

            return(View("DynamicDetails", viewModel));
        }