@{
ViewBag.Title = "Книжный магазин";
}
<div>
<h3>Распродажа книг</h3>
<table>
<tr>
<td><p>Название книги</p></td>
<td><p>Автор</p></td>
<td><p>Цена</p></td>
<td></td>
</tr>
@foreach (var b in ViewBag.Books)
{
<tr>
<td><p>@b.Name</p></td>
<td><p>@b.Author</p></td>
<td><p>@b.Price</p></td>
<!-- Ссылка на метод покупки с передачей ID книги -->
<td><p><a href="/Home/Buy/@b.Id">Купить</a></p></td>
</tr>
}
</table>
</div>
[HttpGet]
public ActionResult Buy(int id)
{
ViewBag.BookId = id;
return View();
}
@{
ViewBag.Title = "Покупка книги";
}
<h3>Форма оформления покупки</h3>
<form method="post">
<!-- Скрытое поле для передачи ID книги в POST-запросе -->
<input type="hidden" value="@ViewBag.BookId" name="BookId" />
<table>
<tr>
<td><p>Введите свое имя</p></td>
<td><input type="text" name="Person" /></td>
</tr>
<tr>
<td><p>Введите адрес</p></td>
<td><input type="text" name="Address" /></td>
</tr>
<tr>
<td><input type="submit" value="Отправить" /></td>
<td></td>
</tr>
</table>
</form>
[HttpPost]
public string Buy(Purchase purchase)
{
purchase.Date = DateTime.Now;
// Добавляем информацию о покупке в базу данных через контекст
db.Purchases.Add(purchase);
// Сохраняем изменения в БД
db.SaveChanges();
return "Благодарим, " + purchase.Person + ", за покупку!";
}