Mvc 2 - ActionLink创建新的Id并传递给Controller

时间:2016-06-12 13:08:52

标签: c# asp.net-mvc-2 entity-framework-4

在我的数据库中,我有Books和RentBooks。我创建了一个View for Books,其中Index返回已创建的所有书籍的列表。我现在想做的是:

我有一个名为Rent Book的ActionLink。 当用户按下" Rent Book"它应该为此创造一个租金。 我不知道如何实现这一点。

这就是我尝试做的事情:这是在书籍的索引视图

 <%: Html.ActionLink("Rent Book", "RentBooks", "Book", new { id=item.RentBooks.Select(r=>r.RentId)}, null)%>

我在BookController中有这个:

 public ActionResult RentBooks (int id)
 {
     db.RentBooks.Where(rb => rb.RentId == id).FirstOrDefault();
     return View();
 }

也许我误解了一些事情......我需要在我的RoleController中这样做吗?在书籍索引中,我无法致电

item.RentBooks.RentId

1 个答案:

答案 0 :(得分:0)

你说当用户按下“Rent Book”时,它应为这个创建一个租金,在这种情况下你应该在你的数据库中添加/插入一个新的RentBook记录。然后代码变为

<%: Html.ActionLink("Rent Book", "RentBooks", "Book", new { new RentBook {id = 123, name="ddd"} }, null)%>

 public ActionResult RentBooks (RentBooks rb)
 {
     db.RentBooks.Add(rb);
     return View();
 }