私はmvc 5を使って学校にオンライン予約システムを作っています。 スタッフは今後予定されているトレーニングプログラム(スケジュールと呼ばれています)を自分自身で予約することができます。スキャフォールディング方法を使用してページを作成しましたが、すでに予約を行っているユーザーが同じスケジュールに再度自分自身を予約することはできないという問題があります。MVC 5のC#で重複予約を停止する方法?
EG:
- scheduleID:12
- StaffID:1
- 日:12/1/17
- のSessionID:あなたがStaffIdを見るように3
既に存在して同じStaffIDが同じスケジュールIDのために再度予約できないようにスケジュール表12
以下の私のコード:
public ActionResult BookingCreate()
{
ViewBag.ScheduleID = new SelectList(db.Schedules, "ScheduleID", "ScheduleID");
ViewBag.SessionID = new SelectList(db.TblSessions, "SessionId", "Name");
ViewBag.StaffID = new SelectList(db.Staffs, "StaffID", "Firstname");
return View();
}
// POST: Booking/BookingCreate
// To protect from overposting attacks, please enable the specific properties you want to bind to, for more details see http://go.microsoft.com/fwlink/?LinkId=317598.
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult BookingCreate([Bind(Include = "BookingID,StaffID,SessionID,ScheduleID,Schedule,TblSession,Staff")] Booking booking)
{
if (ModelState.IsValid)
{
db.Bookings.Add(booking);
db.SaveChanges();
DisplaySuccessMessage("Has append a Booking record");
return RedirectToAction("BookingIndex");
}
ViewBag.ScheduleID = new SelectList(db.Schedules, "ScheduleID", "ScheduleID", booking.ScheduleID);
ViewBag.SessionID = new SelectList(db.TblSessions, "SessionId", "Name", booking.SessionID);
ViewBag.StaffID = new SelectList(db.Staffs, "StaffID", "Firstname", booking.StaffID);
DisplayErrorMessage();
return View(booking);
}
説明は非常に曖昧です。より良い例を明確に説明してください。 – Steve