将对象列表中的 ID 列表从视图发送到控制器 C#

Send List of IDs from List of Object From View to Controller C#

我有一个以对象列表作为模型的视图

@model List<Users>

在该视图中,我有一个表单和按钮,用于在 ASP.NET 核心 MVC 中提交表单:

<input class="btn btn-success ml-2" style=" width: 100px;" 
       type="submit" value="@localizer["Save"]" />

我需要另一个按钮来取消表单提交并重定向到另一个方法,但我需要在取消按钮处传递带有重定向的用户列表

我试过了

<a asp-controller="User" asp-action="cancel" asp-route-ids="@Model.Select(x => x.id);">Cancel</a>

但是没用,列表是空的

如果您使用asp-route-somekey设置查询,您的目标列表名称被识别为键“Ids”的值,您可以看到如下结果:

如果你确实想将列表传递给查询,你可以尝试:

<a asp-controller="User" asp-action="Cancel" asp-all-route-data="@(new Dictionary<string, string> { { "Ids[0]", "1" },{ "Ids[1]", "2" } })">Cancel</a>

结果:

不过url篇幅有限,可能会出现一些错误