// проверка исполнения задания при первом запуске private void CheckProblemFirst() { bool search_prob = true; Problem item; bool? _end_task; DateTime _executeDateTime; for (; search_prob;) { search_prob = false; for (int i = 0; i < ProblemAllObs.Count; i++) { _end_task = null; item = ProblemAllObs[i]; // если напоминание исполнилось if (item.EventChange(ref _end_task, out _executeDateTime)) { search_prob = true; } // если больше не будет повторяться if (_end_task != null && (bool)_end_task) { ProblemAllObs.RemoveAt(i); } } } SerializeA.Serializes(ProblemAllObs, ProblemAllObs.GetType().ToString()); }
// проверка исполнения заданий private void CheckProblem(Action _func) { Problem item; bool? _end_task; DateTime _executeDateTime; for (int i = 0; i < ProblemAllObs.Count; i++) { _end_task = null; item = ProblemAllObs[i]; // если напоминание исполнилось if (item.EventChange(ref _end_task, out _executeDateTime)) { _func(); _problemForSpeech.Add(item); ProblemAllObs.Sort((a, b) => a.StartDateTime.CompareTo(b.StartDateTime)); SerializeA.Serializes(ProblemAllObs, ProblemAllObs.GetType().ToString()); } // если больше не будет повторяться if (_end_task != null && (bool)_end_task) { ProblemAllObs.RemoveAt(i); SerializeA.Serializes(ProblemAllObs, ProblemAllObs.GetType().ToString()); } } }