//string[] TotalTimes = new string[6];

        void OpenWindow()
        {
            List <ControlEquipmentState> DBDataList = new List <ControlEquipmentState>();

            string[] TotalTimes = new string[6];
            for (int j = 0; j < 6; j++)
            {
                DBDataList.Clear();
                TimeSpan timeSpan      = new TimeSpan();
                TimeSpan totalTimeSpan = new TimeSpan();
                using (var db = new ModelDB())
                {
                    string state = States[j];
                    var    Data  = from p in db.ControlEquipmentState
                                   where p.IDState == state
                                   orderby p.Time
                                   select p;

                    foreach (ControlEquipmentState p in Data)
                    {
                        DBDataList.Add(p);
                    }
                }
                for (int i = 0; i < DBDataList.Count; i++)
                {
                    if (i != DBDataList.Count - 1)
                    {
                        if (DBDataList[i].Flag == "Active" && DBDataList[i + 1].Flag == "NotActive" && (DBDataList[i].Time.Date == DBDataList[i + 1].Time.Date))
                        {
                            timeSpan       = DBDataList[i + 1].Time - DBDataList[i].Time;
                            totalTimeSpan += timeSpan;
                        }
                    }
                    if (i == DBDataList.Count - 1)
                    {
                        if (DBDataList[i].Flag == "Active" && SNT_ReleaseSystem && (DBDataList[i].Time.Date == DateTime.Now.Date))
                        {
                            timeSpan       = DateTime.Now - DBDataList[i].Time;
                            totalTimeSpan += timeSpan;
                        }
                    }
                }
                TotalTimes[j] = Convert.ToString($"{totalTimeSpan.Days}. {totalTimeSpan.Hours}:{totalTimeSpan.Minutes}:{totalTimeSpan.Seconds}");
            }
            TotalRelease                 = TotalTimes[0];
            TotalAlarmTime               = TotalTimes[1];
            OperatingTimeInManualMode    = TotalTimes[2];
            OperatingTimeInAutomaticMode = TotalTimes[3];
            TotalDowntime                = TotalTimes[4];
            OperatingMainDevices         = TotalTimes[5];
        }
        void WritingToDB(string CurrentState, string CurrentFlag)
        {
            DateTime CurrentDateTime = DateTime.Now;

            using (var db = new ModelDB())
            {
                var Data = new ControlEquipmentState()
                {
                    IDState = CurrentState,
                    Time    = CurrentDateTime,
                    Flag    = CurrentFlag
                };
                db.ControlEquipmentState.Add(Data);
                db.SaveChanges();
            }
        }
 void DetailOfState()
 {
     using (var db = new ModelDB())
     {
         string state = States[CurrentlySelectedState];
         var    Data  = from p in db.ControlEquipmentState
                        where p.IDState == state
                        orderby p.Time
                        select p;
         Details.Clear();
         foreach (ControlEquipmentState p in Data)
         {
             Details.Add(new Detail
             {
                 IDState = p.IDState,
                 Time    = $"{p.Time.Day}.{p.Time.Month}.{p.Time.Year} {p.Time.Hour}:{p.Time.Minute}:{p.Time.Second}",
                 Flag    = p.Flag
             });
         }
     }
 }
 void Clear()
 {
     using (var db = new ModelDB())
     {
         Mouse.OverrideCursor = Cursors.Wait;
         int numberOfRowDeleted = db.Database.ExecuteSqlCommand("TRUNCATE TABLE ControlEquipmentState");
     }
     _releaseState = false;
     _alarmState   = false;
     _operationMainDevicesState = false;
     _autoModeState             = false;
     _manualModeState           = false;
     _downTimeState             = false;
     ReleaseSystemStateChanged();
     AlarmActiveStateChanged();
     ModeStateChanged();
     CheckingDownTimeState();
     OperationMainDevicesChanged();
     DetailOfState();
     OpenWindow();
     Mouse.OverrideCursor = Cursors.Arrow;
     MyMessageBox.ShowDialog("Удаление прошло успешно!", MyMessageBox.Buttons.OK, "Сообщение", MessageBoxImage.Information);
 }