我一直在遵循以下链接的教程来设置具有多种表单的 Razor 页面。
https://www.youtube.com/watch?v=-6PE4p4gUYQ
在本教程中,它指出,在两种表单(表单 A 和表单 B)中,表单 B 的 post 可以定向到除“OnPost”之外的 post 方法,方法是使用 asp-page-handler 属性并将其定向到不同的方法。 OnPost 以外的方法(例如 asp-page-handler="OnPostUpdateUnits")。
我已经通过以下标签助手在我的代码中实现了这一点:
<form method="post" asp-page-handler="OnPostUpdateUnits">
<select asp-for="Units" asp-items="Model.UnitsSet"></select>
<br /><button type="submit">Update Units</button>
</form>
不幸的是,使用这种形式(即单击“Update Units”按钮)不会导致执行 OnPostUpdateUnits 方法,而是导致执行 OnPost() 方法。如果您能帮助确定问题所在以及如何将上述标记助手定向到 OnPostUpdateUnits 方法,我们将不胜感激。
指定处理程序名称时不需要添加“OnPost”部分
只是
... asp-page-handler="UpdateUnits">