private void AddTaskToGroup(TaskGroup group, Task task) { Task taskCopy = task.ShallowCopy(); if (group.IsSummary) taskCopy.IsTaskAssigned = true; Task groupExistingTask = group.Tasks.FirstOrDefault(x => x.Key == taskCopy.Key); if (groupExistingTask == null) { group.Tasks.Add(taskCopy); } else { AddDataToTask(groupExistingTask, taskCopy); } }