public async Task <ActionResult> Edit(int id, University collection) { try { // TODO: Add update logic here var un = await _context.University.SingleOrDefaultAsync(m => m.Id == id); un.Name = collection.Name; _context.SaveChanges(); return(RedirectToAction(nameof(Index))); } catch { return(View()); } }
public ActionResult Create(Class model, int CreatorId, int UnivirsetyId) { try { if (ModelState.IsValid) { Class cls = new Class { Name = model.Name, CreatorId = CreatorId, UnivirsetyId = UnivirsetyId }; cls = _context.Add(cls).Entity; _context.SaveChanges(); return(RedirectToAction("Join", "ClassStudents", new { id = cls.Id })); } else { return(View("Error")); } } catch { return(View()); } }
public async Task <ActionResult> Create(List <IFormFile> files) { try { // TODO: Add insert logic here long size = files.Sum(f => f.Length); var filePaths = new List <string>(); foreach (var formFile in files) { if (formFile.Length > 0) { // full path to file in temp location var path = Path.Combine( Directory.GetCurrentDirectory(), "wwwroot//ClassFile", formFile.FileName); //var filePath = Path.Combine(_hostingEnvironment.WebRootPath, "ClassFile"); //filePaths.Add(filePath); using (var stream = new FileStream(path, FileMode.Create)) { await formFile.CopyToAsync(stream); } _context.Add(new FileStorage { Name = formFile.FileName, Path = path, ClassId = HttpContext.Session.GetInt32("classid"), StudentId = HttpContext.Session.GetInt32("userId") }); _context.SaveChanges(); } } // process uploaded files // Don't rely on or trust the FileName property without validation. ViewBag.Message = "file uploaded"; // return RedirectToAction(nameof(Index), new { id = HttpContext.Session.GetInt32("userId") }); return(View("Create")); } catch { return(View()); } }
public async Task SendMessage(int classID, string message, int studentId, string studentname) { Chat chat = new Chat { ClassId = classID, StudentId = studentId, Message = message, MessageDateTime = DateTime.Now, SenderName = studentname }; _context.Add(chat); _context.SaveChanges(); await Clients.All.SendAsync("ReceiveMessage", classID, message, studentname); }
public async Task <ActionResult> Delete(int id, Student student) { try { var st = await _context.Student.SingleOrDefaultAsync(m => m.Id == student.Id); _context.Student.Remove(st); _context.SaveChanges(); return(RedirectToAction(nameof(Index))); } catch (Exception ex) { return(View()); } }
public ActionResult Join(int id) { int uid = HttpContext.Session.GetInt32("userId").Value; var r = _context.ClassStudents.Select(x => x).Where(x => x.ClassId == id && x.StudentId == uid).FirstOrDefault(); ClassStudents classStudents = new ClassStudents { ClassId = id, StudentId = uid }; if (r == null) { _context.ClassStudents.Add(classStudents); _context.SaveChanges(); } ViewBag.classId = id; var classname = _context.Class.Select(x => x).Where(x => x.Id == id).FirstOrDefault().Name; HttpContext.Session.SetString("ClassName", classname); HttpContext.Session.SetInt32("classid", id); var messages = from x in _context.Chat where x.ClassId == id select x; var files = from x in _context.FileStorage where x.ClassId == id select x; var cid = from x in _context.Class where x.Id == id select x.CreatorId; JoinViewModel joinViewModel = new JoinViewModel { Chats = messages.ToList(), FileStorages = files.ToList() , CreatorId = cid.FirstOrDefault().HasValue ? cid.FirstOrDefault().Value : 0 }; return(View(joinViewModel)); }