public IEnumerable <TaskSolution> EditTaskSolution(string StudentId, TaskSolution newTaskSolution) { var TaskSolution = DB.TaskSolutions.FromSqlRaw("EXEC dbo.usp_TaskSolutions_Update {0}", newTaskSolution.TaskSolutionId, StudentId, newTaskSolution.TaskSolutionURL).ToList <TaskSolution>(); return(TaskSolution); }
public TaskSolution AddTaskByStudent(TaskSolution newTaskSolution) { var TaskSolution = DB.TaskSolutions.FromSqlRaw("EXEC dbo.usp_TaskSolutions_Insert {0},{1},{2},{3},{4}", newTaskSolution.MyUserModelId, newTaskSolution.TaskId, newTaskSolution.CourseId, newTaskSolution.TaskSolutionURL, newTaskSolution.FileName).ToList <TaskSolution>().FirstOrDefault(); return(TaskSolution); }
///////////////////////not sure of the route public async Task <IActionResult> AddTaskSolutionByStudent(int TaskId, int CourseId) { if (Request.Form.Files.Count() < 1 || TaskId < 1 || CourseId < 1) { return(BadRequest()); } var files = new List <IFormFile>(); for (int i = 0; i < Request.Form.Files?.Count(); i++) { files.Add(Request.Form.Files[i]); } var uploader = new Uploader(hostingEnvironment); var AllMaterial = new List <TaskSolution>(); var StudentId = User.Claims.First(c => c.Type == "UserId").Value; var NewTaskSolution = new TaskSolution(); NewTaskSolution.MyUserModelId = StudentId; foreach (IFormFile source in files) { if (source.Length == 0) { continue; } string filename = ContentDispositionHeaderValue.Parse(source.ContentDisposition).FileName.ToString().Trim('"'); filename = uploader.EnsureCorrectFilename(filename); var PathToBeSavedInDB = uploader.GetPathAndFilename(filename); using (FileStream output = System.IO.File.Create(PathToBeSavedInDB)) await source.CopyToAsync(output); NewTaskSolution.TaskId = TaskId; NewTaskSolution.CourseId = CourseId; NewTaskSolution.FileName = filename; NewTaskSolution.TaskSolutionURL = PathToBeSavedInDB; var cm = TaskSolutionManager.AddTaskByStudent(NewTaskSolution); AllMaterial.Add(cm); } return(Ok(AllMaterial)); }