/// <summary>
 /// Добавляет новое ОСП в общий список.
 /// </summary>
 /// <param name="newOsp">Новое ОСП</param>
 public void AddNewOsp(OspDTO newOsp)
 {
     if (newOsp != null)
     {
         Osps.Add(newOsp);
     }
 }
 /// <summary>
 /// Полный конструктор.
 /// </summary>
 /// <param name="id">Id пользователя</param>
 /// <param name="login">Логин</param>
 /// <param name="fullname">Полное имя</param>
 /// <param name="email">Адрес электронной почты</param>
 /// <param name="osp">ОСП пользователя</param>
 /// <param name="access">Уровень доступа</param>
 /// <param name="active">Статус активности</param>
 public UserDTO(int id, string login, string fullname, OspDTO osp, AccessDTO access, bool active = true)
 {
     Id       = id;
     Login    = login;
     Fullname = fullname;
     Osp      = osp;
     Access   = access;
     Active   = active;
 }
        /// <summary>
        /// Обновляет одно ОСП.
        /// </summary>
        /// <param name="editedOsp">Отредактированное ОСП</param>
        public void UpdateOsp(OspDTO editedOsp)
        {
            // Найти ОСП, равное редактированному, в текущем списке всех ОСП.
            OspDTO osp = Osps.FirstOrDefault(x => x.Id == editedOsp.Id);

            // Если ОСП найден.
            if (osp != null)
            {
                // Присвоить значения свойств отредактированного ОСП текущему.
                foreach (var prop in osp.GetType().GetProperties())
                {
                    prop.SetValue(osp, prop.GetValue(editedOsp));
                }
                // Если отредактированное ОСП является текущиим для пользователя.
                if (editedOsp.Id == CurrentUser.Osp.Id)
                {
                    // Присвоить значения свойств отредактированного ОСП текущему ОСП пользователя.
                    foreach (var prop in CurrentUser.Osp.GetType().GetProperties())
                    {
                        prop.SetValue(CurrentUser.Osp, prop.GetValue(editedOsp));
                    }
                }
            }
        }