public async Task <IActionResult> Edit(int id, [Bind("UserApartmentID,UserID,ApartmentID,Owner,Resident")] UserApartment userApartment) { if (id != userApartment.UserApartmentID) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(userApartment); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!UserApartmentExists(userApartment.UserApartmentID)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["ApartmentID"] = new SelectList(_context.Apartments, "ApartmentID", "Name", userApartment.ApartmentID); ViewData["UserID"] = new SelectList(_context.Users, "ID", "LastName", userApartment.UserID); return(View(userApartment)); }
public async Task <IActionResult> Create([Bind("UserApartmentID,UserID,ApartmentID,Owner,Resident")] UserApartment userApartment) { if (ModelState.IsValid) { _context.Add(userApartment); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["ApartmentID"] = new SelectList(_context.Apartments, "ApartmentID", "Name", userApartment.ApartmentID); ViewData["UserID"] = new SelectList(_context.Users, "ID", "LastName", userApartment.UserID); return(View(userApartment)); }
public async Task AddAsync(UserApartmentInputModel userApartmentInputModel) { var user = await this.usersRepository .All() .FirstOrDefaultAsync(x => x.Id == userApartmentInputModel.ApplicationUserId); if (user == null) { throw new NullReferenceException( string.Format(GlobalConstants.ErrorMessages.UserNotFound, user.Id)); } var apartment = await this.apartmentsRepository .All() .FirstOrDefaultAsync(x => x.Id == userApartmentInputModel.ApartmentId); if (apartment == null) { throw new NullReferenceException( string.Format(GlobalConstants.ErrorMessages.ApartmentNotFound, apartment.Id)); } var userApartment = new UserApartment { ApplicationUserId = userApartmentInputModel.ApplicationUserId, ApartmentId = userApartmentInputModel.ApartmentId, }; bool doesUserApartmentExist = await this.usersApartmentsRepository .All() .AnyAsync(x => x.ApplicationUserId == userApartment.ApplicationUserId && x.ApartmentId == userApartment.ApartmentId); if (doesUserApartmentExist) { throw new ArgumentException(string.Format(GlobalConstants.ErrorMessages.UserApartmentExists, userApartment.ApplicationUserId, userApartment.ApartmentId)); } await this.usersApartmentsRepository.AddAsync(userApartment); await this.usersApartmentsRepository.SaveChangesAsync(); }
public async Task SeedAsync(ApplicationDbContext dbContext, IServiceProvider serviceProvider) { if (dbContext.UserApartments.Any()) { return; } var user = dbContext.Users.FirstOrDefault(x => x.Email == "*****@*****.**"); var apartment = dbContext.Apartments.FirstOrDefault(x => x.ApartmentNumber == "62"); var userAparment = new UserApartment { ApplicationUserId = user.Id, ApartmentId = apartment.Id, }; await dbContext.AddAsync(userAparment); await dbContext.SaveChangesAsync(); }
public static void Initialize(ApartmentContext context) { context.Database.EnsureCreated(); // Look for any students. if (context.Users.Any()) { return; // DB has been seeded } var users = new User[] { new User { FirstName = "Rudi", LastName = "Cuypers", Email = "*****@*****.**", City = "Merksem", Street = "Lambrechtshoekenlaan", Zip = "2170", EnrollmentDate = DateTime.Parse("01-01-1992") }, new User { FirstName = "Dominica", LastName = "Vercammen", Email = "*****@*****.**", City = "Merksem", Street = "Lambrechtshoekenlaan", Zip = "2170", EnrollmentDate = DateTime.Parse("01-01-1992") }, new User { FirstName = "name", LastName = "lastnae", Email = "*****@*****.**", City = "Merksem", Street = "Lambrechtshoekenlaan", Zip = "2170", EnrollmentDate = DateTime.Parse("01-01-2010") } }; foreach (User u in users) { context.Users.Add(u); } context.SaveChanges(); var Apartments = new Apartment[] { new Apartment { ApartmentID = 10, Garage = true, Name = "B3" }, new Apartment { ApartmentID = 11, Garage = false, Name = "A1" } }; foreach (Apartment a in Apartments) { context.Apartments.Add(a); } context.SaveChanges(); var ApartmentUsers = new UserApartment[] { new UserApartment { ApartmentID = 10, UserID = 1, Owner = true, Resident = true }, new UserApartment { ApartmentID = 10, UserID = 2, Owner = false, Resident = true }, new UserApartment { ApartmentID = 11, UserID = 3, Owner = true, Resident = false } }; foreach (UserApartment a in ApartmentUsers) { context.UserApartments.Add(a); } context.SaveChanges(); }