問題:您好,所以在顯示產品的視圖中,我有一個按鈕可以呼叫 post 方法將此產品添加到購物車中,但該按鈕根本沒有執行此操作。
<div class="mb-3">
<input class="btn btn-primary" type="submit" value="Add to cart" asp-controller="Cart" asp-action="Add" asp-route-id="@Model.Id"/>
</div>
這是購物車控制器中的方法
[HttpPost]
public async Task<IActionResult> Add(int productId)
{
//Console.WriteLine("HelloCartAdd!");
//Some logic.
return RedirectToAction("Detail", "Product", productId);
}
uj5u.com熱心網友回復:
當路由引數被定義為asp-route-id="@Model.Id"動作方法時應該使用'id'引數名:
[HttpPost]
public async Task<IActionResult> Add(int id)
{
...
}
如果[HttpPost]屬性應用于操作方法,請將formmethod="post"屬性添加到<input>標記。我想按鈕已經位于表單內。
<form>
<input class="btn btn-primary" type="submit" formmethod="post" value="Add to cart" asp-controller="Cart" asp-action="Add" asp-route-id="@Model.Id" />
</form>
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/535866.html
