예제 #1
0
        public ActionResult Index(int?id, long logicAddress)
        {
            if (id == null)
            {
                return(HttpNotFound());
            }

            var oldComputerDTO = _computerService.GetById(id.Value);
            var routerDTO      = _routerService.GetById(oldComputerDTO.RouterId);

            if (!_networkService.CheckIPRange(id.Value, logicAddress))
            {
                var computerVM = _mp.Map <ComputerVM>(oldComputerDTO);

                ModelState.AddModelError("", "Ip is out of range!");
                return(View(computerVM));
            }

            _computerService.Update(new ComputerDTO {
                Model           = oldComputerDTO.Model,
                HardwareAddress = oldComputerDTO.HardwareAddress,
                Id           = oldComputerDTO.Id,
                Manufactured = oldComputerDTO.Manufactured,
                RoomId       = oldComputerDTO.RoomId,
                RouterId     = oldComputerDTO.RouterId,
                LogicAddress = logicAddress,
                Mask         = routerDTO.Mask
            });

            return(RedirectToAction("Index", "Computer"));
        }