public ActionResult ChangeAssosiationResult(ChangeAssosiationViewModel model) { var db = new OneDriveDbContext(); var userManager = HttpContext.GetOwinContext().GetUserManager <ApplicationUserManager>(); if (model.CurrentId == -1) { if (db.Files.Any(x => x.DocumentName == model.Title) && userManager.Users.Any(x => x.Title == model.Title)) { if (model.NewId == -1 || !db.Files.Any(x => x.DocumentId == model.NewId)) { db.Files.First(x => x.DocumentName == model.Title).DocumentId = model.NewId; var user = userManager.Users.First(x => x.Title == model.Title); user.Title = GetTitleById(model.NewId); if (userManager.Update(user).Succeeded) { db.SaveChanges(); return(View(true)); } } } } else if (db.Files.Any(x => x.DocumentId == model.CurrentId)) { if (model.NewId == -1 || !db.Files.Any(x => x.DocumentId == model.NewId)) { db.Files.First(x => x.DocumentId == model.CurrentId).DocumentId = model.NewId; db.SaveChanges(); return(View(true)); } } return(View(false)); }
public ActionResult ChangeAssosiation(int id = -1, string title = "") { if (id == -1 && title == "") { return(View("Error")); } if (title == "") { title = GetTitleById(id); } var db = new OneDriveDbContext(); var model = new ChangeAssosiationViewModel { Title = title, CurrentId = id, NewId = id }; return(db.Files.Any(x => id != -1 ? x.DocumentId == id : x.DocumentName == title) ? View(model) : View("Error")); }