我遇到了一个困难,我把GitHub链接给你,所以如果你想提供帮助,你可以看到代码:https://github.com/Bromy74/ChoixResto
我正在尝试预订餐厅。
让我解释一下:表格要求提供餐馆名称(在DropDownList中包含“Resto”类型对象的所有名称),参与者数量,事件日期和组织者名称(在包含“用户”对象的所有名称的DropDownList中)
当我点击表单的验证按钮时,我希望所生成的操作使用表单上的信息填写我的数据库的“预订”表。
我提出了一些要素:
预订舱位:
public class Booking
{
public int Id { get; set; }
public Resto Restochoisi { get; set; }
public int Nbpeople { get; set; }
public DateTime Date { get; set; }
public Utilisateur Orga { get; set; }
}
BookingController的一部分:
public ActionResult Index()
{
var context = new BddContexte();
var vm = new BookingViewModel()
{
Restos = new SelectList(context.Restos.AsEnumerable(), "Id", "Nom"),
Utilisateurs = new SelectList(context.Utilisateurs.AsEnumerable(), "Id", "Prenom")
};
return View(vm);
}
[HttpPost]
public ActionResult Index(Resto restochoisi, int nbpeople, DateTime datepicker, Utilisateur orga)
{
int id = dal.CreerBooking(restochoisi, nbpeople, datepicker, orga);
return View();
}
索引视图的一部分:
@Html.DropDownList("restochoisi", Model.Restos, new { @class = "form-control" })
@Html.TextBox("nbpeople", "", new { @class = "form-control" })
<input name="datepicker" type="text" class="form-control" id="datepicker">
@Html.DropDownList("orga", Model.Utilisateurs, new { @class = "form-control" })
方法“CreerBooking”:
public int CreerBooking(Resto Restochoisi,int Nbpeople,DateTime Date, Utilisateur Orga)
{
Booking booking = new Booking { Restochoisi = Restochoisi, Nbpeople = Nbpeople, Date = Date, Orga = Orga };
bdd.Bookings.Add(booking);
bdd.SaveChanges();
return booking.Id;
}
实际上我不知道如何从DropDownList中恢复“Resto”类型的对象,然后创建“Booking”类型的对象
提前感谢那些愿意花时间帮助我的人! 马修