asp.net MVC 4在数据库中创建新项目后重定向到详细信息

本文关键字:新项目 重定向 详细信息 创建 MVC net 数据库 asp | 更新日期: 2023-09-27 18:00:00

希望有人能帮助我。

我正在创建一个网站,人们可以在这里进行预订,并将其保存到数据库中。

我遇到的问题是,当有人在网站上创建预订时,会将他们带回该控制器的索引视图,该视图显示数据库中的所有内容。

但是,我希望在他们点击创建按钮后,它能将他们带到预订的详细信息视图。

我希望这是清楚的。我的创建代码是:

     // POST: /Booking/Create
    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Create(Booking booking)
    {
        if (ModelState.IsValid)
        {
            db.Bookings.Add(booking);
            db.SaveChanges();
            return RedirectToAction("Index");
        }
        return View(booking);
    }

如果我尝试更换

     return RedirectToAction("Index");

带有

     return RedirectToAction("Details");

我犯了一个错误,但一定有一个简单的方法可以做到吗?有人能指出我哪里错了吗?

谢谢。

asp.net MVC 4在数据库中创建新项目后重定向到详细信息

[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(Booking booking)
{
    if (ModelState.IsValid)
    {
        db.Bookings.Add(booking);
        db.SaveChanges();
        return RedirectToAction("Details", new { bookingId = booking.Id });
    }
    return View(booking);
}
public ActionResult Details(int bookingId)
{
    var details = GetBookingDetails(bookingId); //Load details
    return View(details);
}

您的详细信息操作肯定需要您希望显示详细信息的预订id。你的细节动作是这样的吗?

public ActionResult Details(int id)

假设你的预订类有一个整数Id属性,你很可能需要

return RedirectToAction("Details","<ControllerName>", new{id=booking.Id});