Ejemplo n.º 1
0
        // GET: ExhibitionRoomItem/Create
        public ActionResult Create(long?roomId)
        {
            if (roomId == null)
            {
                return(NotFound());
            }

            ExhibitionRoomItemModel roomItemModel = new ExhibitionRoomItemModel();

            roomItemModel.RoomId = (Int64)roomId;

            ViewBag.RoomId      = roomId;
            ViewBag.ArtworkList = PopulateArtworkDropDownList(0);

            return(View(roomItemModel));
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> Create([Bind("ArtworkId,EditionNumber,Scale,RoomId,Order")] ExhibitionRoomItemModel exhibitionRoomItemModel)
        {
            if (ModelState.IsValid)
            {
                //default values
                exhibitionRoomItemModel.Scale  = 1;
                exhibitionRoomItemModel.Offset = "0,0,0";
                exhibitionRoomItemModel.Axis   = "0,1,0";

                _context.Add(exhibitionRoomItemModel);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(ExhibitionRoomController.Edit), "ExhibitionRoom", new { id = exhibitionRoomItemModel.RoomId }));
            }

            ViewBag.ArtworkList = PopulateArtworkDropDownList(0);

            return(View(exhibitionRoomItemModel));
        }
Ejemplo n.º 3
0
        public async Task <ActionResult> Edit(long?id, [Bind("RoomItemId,ArtworkId,EditionNumber,Scale,RoomId,Order")] ExhibitionRoomItemModel exhibitionRoomItemModel)
        {
            if (id == null)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                var exhibitionRoomItemToUpdate = await _context.ExhibitionRoomItems.Include(d => d.Artwork)
                                                 .FirstOrDefaultAsync(m => m.RoomItemId == id);

                if (await TryUpdateModelAsync <ExhibitionRoomItemModel>(
                        exhibitionRoomItemToUpdate,
                        "",
                        i => i.ArtworkId,
                        i => i.EditionNumber,
                        i => i.Scale,
                        i => i.RoomId,
                        i => i.Order))
                {
                    try
                    {
                        await _context.SaveChangesAsync();
                    }
                    catch (DbUpdateException ex)
                    {
                        _logger.LogError($"ExhibitionRoomItem -> Edit -> exception: {ex.ToString()}");

                        //Log the error (uncomment ex variable name and write a log.)
                        ModelState.AddModelError("", "Unable to save changes. " +
                                                 "Try again, and if the problem persists, " +
                                                 "see your system administrator.");
                    }
                    return(RedirectToAction(nameof(ExhibitionRoomController.Edit), "ExhibitionRoom", new { id = exhibitionRoomItemToUpdate.RoomId }));
                }
            }

            ViewBag.ArtworkList = PopulateArtworkDropDownList(exhibitionRoomItemModel.ArtworkId);

            return(View(exhibitionRoomItemModel));
        }