Esempio n. 1
0
        static HardwareMapperInitialise()
        {
            Mapper.AddMap <HardwareSettings, HardwareSettingsDto>(x =>
            {
                var settings = new HardwareSettingsDto();
                settings.NetworkMonitoring.InjectFrom(x.NetworkMonitoring);
                settings.CpuMonitoring.InjectFrom(x.CpuMonitoring);
                settings.EmailAlertSettings.InjectFrom(x.EmailAlertSettings);

                settings.Drives = x.Drives
                                  .Select(c => new DriveSettingsDto().InjectFrom(c)).Cast <DriveSettingsDto>()
                                  .ToList();

                return(settings);
            });

            Mapper.AddMap <HardwareSettingsDto, HardwareSettings>(x =>
            {
                var settings = new HardwareSettings();
                settings.NetworkMonitoring.InjectFrom(x.NetworkMonitoring);
                settings.CpuMonitoring.InjectFrom(x.CpuMonitoring);
                settings.EmailAlertSettings.InjectFrom(x.EmailAlertSettings);

                settings.Drives = x.Drives
                                  .Select(c => new DriveSettings().InjectFrom(c)).Cast <DriveSettings>()
                                  .ToList();

                return(settings);
            });

            Mapper.AddMap <HardwareSettingsViewModel, HardwareSettingsDto>(x =>
            {
                var settings = new HardwareSettingsDto();
                settings.NetworkMonitoring.InjectFrom(x.NetworkMonitoring);
                settings.CpuMonitoring.InjectFrom(x.CpuMonitoring);
                settings.EmailAlertSettings.InjectFrom(x.EmailAlertSettings);

                settings.Drives = x.Drives
                                  .Select(c => new DriveSettingsDto().InjectFrom(c)).Cast <DriveSettingsDto>()
                                  .ToList();

                return(settings);
            });

            Mapper.AddMap <HardwareSettingsDto, HardwareSettingsViewModel>(x =>
            {
                var settings = new HardwareSettingsViewModel();
                settings.NetworkMonitoring.InjectFrom(x.NetworkMonitoring);
                settings.CpuMonitoring.InjectFrom(x.CpuMonitoring);
                settings.EmailAlertSettings.InjectFrom(x.EmailAlertSettings);

                settings.Drives = x.Drives
                                  .Select(c => new DriveSettingsViewModel().InjectFrom(c)).Cast <DriveSettingsViewModel>()
                                  .ToList();

                return(settings);
            });
        }
        public ActionResult HardwareSettings(HardwareSettingsViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(View(viewModel));
            }

            var dto = new HardwareSettingsDto();

            dto.InjectFrom(viewModel);

            var result = HardwareSettingsService.SaveSettings(dto);

            if (result)
            {
                return(RedirectToAction("HardwareSettings"));
            }

            return(View("Error"));
        }