예제 #1
0
        public IActionResult Edit(ParkingEditViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(viewModel));
            }

            var parking = _context.ParkingEntities.Find(viewModel.Id);

            if (parking == null)
            {
                return(NotFound());
            }

            var address = Address.Create(viewModel.Country, viewModel.City, viewModel.Street);

            if (!address.IsSuccess)
            {
                return(BadRequest());
            }

            parking.UpdateAddress(address.Value);
            _context.SaveChanges();

            return(RedirectToAction(nameof(Index)));
        }
예제 #2
0
        public IActionResult Edit(int id)
        {
            var parking = _context.ParkingEntities.Find(id);

            if (parking == null)
            {
                return(NotFound());
            }

            var viewModel = new ParkingEditViewModel
            {
                Id      = id,
                Country = parking.Address.Country,
                City    = parking.Address.City,
                Street  = parking.Address.Street,
                Levels  = parking.ParkingLevels.Select(x => new ParkingLevelEditViewModel
                {
                    Id            = x.Id,
                    Floor         = x.Floor,
                    ParkingSpaces = x.ParkingSpaces.Select(ps => new ParkingSpaceEditViewModel
                    {
                        Id      = ps.Id,
                        Number  = ps.Number,
                        Vehicle = ps.Vehicle
                    }).OrderBy(ps => ps.Number).ToList()
                }).OrderBy(x => x.Floor).ToList()
            };

            return(View(viewModel));
        }