从另一个控制器的视图调用 post 方法



问题:你好,所以在显示产品的视图中,我有一个按钮可以调用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);
}

当路由参数定义为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>

相关内容

  • 没有找到相关文章

最新更新