コード例 #1
0
        public async Task <ActionResult> Update(int id, ManufacturerViewModel model)
        {
            try
            {
                var manufacturer = await _makeRepo.GetManufacturerById(id);

                if (manufacturer == null)
                {
                    return(NotFound($"Kunde inte hitta någon tillverkare med id: {id}"));
                }

                manufacturer.Name = model.Name;

                _makeRepo.Update(manufacturer);

                if (await _makeRepo.SaveAllAsync())
                {
                    return(NoContent());
                }

                return(StatusCode(500, "Det gick inte att uppdatera tillverkaren"));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }
コード例 #2
0
        public IActionResult Delete(int id)
        {
            var device          = _deviceRepository.GetDeviceById(id);
            var manufacturer    = _manufacturerRepository.GetManufacturerById(device.Manufacturer.ManufacturerId);
            var operatingSystem = _operatingSystemRepository.GetOperatingSystemById(device.OperatingSystem.Id);
            var osVersion       = _osVersionRepository.GetOSversionById(device.OSversion.Id);
            var processor       = _processorRepository.GetProcessorById(device.Processor.Id);
            var ramAmount       = _ramAmountRepository.GetRAMamountById(device.RAMamount.Id);

            _deviceRepository.DeleteDevice(id);

            if (manufacturer.Devices.Count == 0)
            {
                _manufacturerRepository.DeleteManufacturer(manufacturer.ManufacturerId);
            }
            if (operatingSystem.Devices.Count == 0)
            {
                _operatingSystemRepository.DeleteOperatingSystem(operatingSystem.Id);
            }
            if (osVersion.Devices.Count == 0)
            {
                _osVersionRepository.DeleteOSversion(osVersion.Id);
            }
            if (processor.Devices.Count == 0)
            {
                _processorRepository.DeleteProcessor(processor.Id);
            }
            if (ramAmount.Devices.Count == 0)
            {
                _ramAmountRepository.DeleteRAMamount(ramAmount.Id);
            }

            return(RedirectToAction("Devices"));
        }