예제 #1
0
        public async Task <IActionResult> Edit(int id, [Bind("FormObjectId,Order,QuestionNo,PageNo,ObjectTypeId")] FormObject formObject, string save)
        {
            if (id != formObject.FormObjectId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    //This will only trigger when the dropdown has been changed
                    if (save == null)
                    {
                        ViewData["Orders"] = new SelectList(GetNextOrderNoList(isEdit: false, pageNo: formObject.PageNo));
                        ViewData["PageNo"] = new SelectList(GetPages());
                    }
                    else
                    {
                        UpdateOrderNos(formObject, isEdit: true);

                        _context.Update(formObject);
                        await _context.SaveChangesAsync();

                        return(RedirectToAction(nameof(Index)));
                    }
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!FormObjectExists(formObject.FormObjectId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
            }
            ViewData["ObjectTypeId"] = new SelectList(_context.ObjectTypes, "ObjectTypeId", "Name", formObject.ObjectTypeId);
            return(View(formObject));
        }
예제 #2
0
        public async Task <IActionResult> Edit(int id, [Bind("ObjectTypeId,Name,Data,Image,Options,StartEnd,ControlTypeId")] ObjectTypeViewModel objectTypeViewModel)
        {
            ObjectType objectType = new ObjectType {
            };

            if (id != objectTypeViewModel.ObjectTypeId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    //Only update if the image is valid or not required
                    if (CheckImage(objectTypeViewModel))
                    {
                        objectType = await AssignObjectType(objectTypeViewModel);

                        _context.Update(objectType);
                        await _context.SaveChangesAsync();

                        return(RedirectToAction(nameof(Index)));
                    }
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ObjectTypeExists(objectType.ObjectTypeId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
            }
            ViewData["ControlTypeId"] = new SelectList(_context.ControlTypes, "ControlTypeId", "Name", objectType.ControlTypeId);
            return(View(objectTypeViewModel));
        }