bool Reset(string path, int year) { if (Year == year) { return(true); } Year = year; XptDays = new List <ExceptDays>(); if (YearIsNotOK()) { return(false); } if (string.IsNullOrEmpty(path)) { return(false); } if (!Directory.Exists(path)) { return(false); } string FileN = $@"{path}\{Year}.calendar.mpp"; if (!File.Exists(FileN)) { return(false); } UniversalProjectReader reader = new UniversalProjectReader(); ProjectFile project = reader.read(FileN); var RootTasks = project.GetChildTasks(); var Clds = project.getCalendars(); var Xps = Clds.GetExceptions(); foreach (var X in Xps) { XptDays.Add(new ExceptDays { From = ToDayBegin(X.From), To = ToDayEnd(X.To), IsWorking = X.IsWorking }); } WDaysInM = CountWDays(Day1, DayN); return(true); }