public async Task <IActionResult> OnPostAsync(int buildingid, int departmentid) { BuildingIdRoute = buildingid; DepartmentIdRoute = departmentid; ViewData["Building"] = new SelectList(_context.Buildings, "BuildingID", "Name", buildingid); if (!ModelState.IsValid) { return(Page()); } AllRoomNumbers = await _context.Rooms .Where(r => r.BuildingID == buildingid) .Select(i => i.Number) .ToListAsync(); if (AllRoomNumbers.Contains(Room.Number)) { SameNumberError = "Już istnieje pokój o tym numerze."; return(Page()); } _context.Rooms.Add(Room); await _context.SaveChangesAsync(); return(RedirectToPage("./Index", new { buildingid = BuildingIdRoute, departmentid = DepartmentIdRoute })); }
public async Task <IActionResult> OnPostAsync(int roomid, int buildingid, int departmentid) { BuildingIdRoute = buildingid; DepartmentIdRoute = departmentid; ViewData["Building"] = new SelectList(_context.Buildings, "BuildingID", "Name", buildingid); if (!ModelState.IsValid) { return(Page()); } AllRoomNumbers = await _context.Rooms .Where(r => r.BuildingID == buildingid) .Select(i => i.Number) .ToListAsync(); if (AllRoomNumbers.Contains(Room.Number)) { SameNumberError = "Już istnieje pokój o tym numerze."; return(Page()); } var roomToUpdate = await _context.Rooms.FindAsync(roomid); if (await TryUpdateModelAsync <Room>( roomToUpdate, "Room", s => s.Number, s => s.Type, s => s.Spots, s => s.Equipment, s => s.BuildingID)) { await _context.SaveChangesAsync(); } return(RedirectToPage("./Index", new { buildingid = BuildingIdRoute, departmentid = DepartmentIdRoute })); }