public static TaskDTO Map(TaskModel entity) { if (entity == null) { return(null); } var dto = new TaskDTO { Id = entity.Id, Name = entity.Name, ContentText = entity.ContentText, IsOpen = entity.IsOpen, BeginDate = entity.BeginDate, FinishDate = entity.FinishDate, UpdateDate = entity.UpdateDate, }; if (entity.Type != null) { dto.Type = entity?.Type.Name; } if (entity.Subject != null) { dto.Subject = entity?.Subject.Name; } if (entity.File != null) { dto.FileURI = entity.File.FileURI; dto.FileName = entity.File.FileName; } if (entity.Teacher != null) { dto.TeacherName = entity.Teacher.Name; dto.TeacherSurname = entity.Teacher.Surname; dto.TeacherPatronymic = entity.Teacher.Patronymic; } if (entity.Group != null) { dto.Group = entity.Group.NumberName; } if (entity.TaskStudentItems != null) { dto.StudentsCount = entity.TaskStudentItems.Count; } if (entity.Solutions != null) { foreach (var sol in entity.Solutions) { dto.Solutions.Add(SolutionDTO.Map(sol)); } dto.SolutionsCount = entity.Solutions.Count; } return(dto); }