internal void Rename(int projectIndex, string newProjectName) { if (Contains(newProjectName)) { throw new Exception("Проект с таким именем уже существует в коллекции!"); } Project projectToReplace = new Project(newProjectName); // Copy task foreach (var task in _userProjects[projectIndex].ProjectTasks) { projectToReplace.ProjectTasks.Add(task); } // Copy materials foreach (var material in _userProjects[projectIndex].Materials) { projectToReplace.Materials.Add(material); } projectToReplace.ProjectGoal = _userProjects[projectIndex].ProjectGoal; projectToReplace.RepeatInterval = _userProjects[projectIndex].RepeatInterval; SetofNames.Remove(_userProjects[projectIndex].ProjectName); SetofNames.Add(newProjectName); _userProjects[projectIndex] = projectToReplace; }
internal void Add(Project project) { if (SetofNames.Add(project.ProjectName)) { _userProjects.Add(project); } else { throw new Exception("Проект с таким именем уже существует!"); } }