public TaskListEntryModel Load(Result currentResult, LabEntry entryToLoad) { var resultForEntry = currentResult .AbstractResultEntries .OfType <TaskResult>() .SingleOrDefault(result => result.TaskVariant.Task.Id == entryToLoad.Task.Id); var taskState = resultForEntry?.Status == ExecutionStatus.Complete ? TaskExecutionState.Solved : TaskExecutionState.New; return(new TaskListEntryModel() { TaskId = entryToLoad.Task.Id, TaskName = entryToLoad.Task.Name, State = taskState }); }
/// <summary> Сохранение содержания лабораторной работы </summary> public void SaveLabEntries(long labWorkId, long[] tasksId) { CheckNotDisposed(); int i = 0; LabWork lab = GetLabWorkById(labWorkId); foreach (var task in tasksId.Distinct().Select(id => _taskRepository.Tasks.Find(id))) { LabEntry entry = Context.LabEntries.Create(); entry.LabWork = lab; entry.Order = ++i; entry.Task = task; Context.LabEntries.Add(entry); } Context.SaveChanges(); }