gpt4 book ai didi

asp.net-mvc - 使用 Html.BeginForm 发布到当前 Controller

转载 作者:行者123 更新时间:2023-12-04 13:30:05 24 4
gpt4 key购买 nike

我有一个在多个 View 中使用的部分。
部分包含表格。提交表单时的操作始终相同,但包含该操作的 Controller 取决于 View 。
假设我有 Controller ,每个 Controller 都有一个 ActOnChoosenPerson:

FireStaffController

HireStaffController


我有部分

PersonList.ascx


表格呈现为

Html.BeginForm("FireStaffController" ,"ActOnChoosenPerson") or

Html.BeginForm("HireStaffController" ,"ActOnChoosenPerson")


摆脱 Controller 参数的好方法是什么?现在我将当前 Controller 的名称传递给模型并使用

Html.BeginForm(Model.CurrentController ,"ActOnChoosenPerson")


但这有点尴尬。

最佳答案

此代码将始终为您当前的 Controller

<%=( Url.RequestContext.RouteData.GetRequiredString("Controller")) %>

显然你可以在没有 <%= 的情况下使用它
Html.BeginForm(
Url.RequestContext.RouteData.GetRequiredString("Controller")) ,
"ActOnChoosenPerson")

它看起来更笨重,但您的模型不需要知道哪个 Controller 正在调用它。

关于asp.net-mvc - 使用 Html.BeginForm 发布到当前 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1031452/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com