Esempio n. 1
0
 private void dataGrid1_RowEditEnding(object sender, DataGridRowEditEndingEventArgs e)
 {
     if (this.dataGrid1.SelectedItem != null)
     {
         (sender as DataGrid).RowEditEnding -= dataGrid1_RowEditEnding;
         (sender as DataGrid).CommitEdit();
         if (dataGrid1.SelectedItem.GetType() == typeof(GPU))
         {
             gpuRepository.Update((this.dataGrid1.SelectedItem as GPU));
         }
         if (dataGrid1.SelectedItem.GetType() == typeof(CPU))
         {
             cpuRepository.Update((this.dataGrid1.SelectedItem as CPU));
         }
         if (dataGrid1.SelectedItem.GetType() == typeof(InformationSupport))
         {
             informationSupportRepository.Update((this.dataGrid1.SelectedItem as InformationSupport));
         }
         if (dataGrid1.SelectedItem.GetType() == typeof(Monitor))
         {
             monitorRepository.Update((this.dataGrid1.SelectedItem as Monitor));
         }
         if (dataGrid1.SelectedItem.GetType() == typeof(Software))
         {
             softwareRepository.Update((this.dataGrid1.SelectedItem as Software));
         }
         if (dataGrid1.SelectedItem.GetType() == typeof(StorageDevice))
         {
             storageRepository.Update((this.dataGrid1.SelectedItem as StorageDevice));
         }
         (sender as DataGrid).Items.Refresh();
         (sender as DataGrid).RowEditEnding += dataGrid1_RowEditEnding;
     }
 }
        public ActionResult Edit(Guid id, FormCollection collection)
        {
            try
            {
                var monitor = _monitorRepository.GetById(id);

                monitor.Name = collection["Name"];
                var enabled = collection["Enabled"];
                if (enabled == "true,false")
                {
                    monitor.Enabled = true;
                }
                else
                {
                    monitor.Enabled = false;
                }
                var messengers = collection["Messengers"].Split(',').ToList();
                monitor.Messengers.Clear();
                foreach (var messenger in messengers)
                {
                    var item = _messengerRepository.GetById(new Guid(messenger));

                    monitor.Messengers.Add(item);
                }

                _monitorRepository.Update(monitor);

                return(RedirectToAction("Index"));
            }
            catch (Exception e)
            {
                return(View());
            }
        }