gpt4 book ai didi

asp.net-mvc-4 - Html.RenderAction 使用 Post 而不是 Get

转载 作者:行者123 更新时间:2023-12-02 19:47:48 30 4
gpt4 key购买 nike

我的页面上有一个简单的表单。提交后,它会检查 ModelState.IsValid 是否有效,如果无效,则返回具有相同模型的 View 。

在同一页面上,我正在呈现一个包含另一个表单的操作,如下所示:

Html.RenderAction("AccountNote", new { id = Model.ID });

一切正常,直到我在页面上提交表单并且验证失败。当它再次显示页面时,AccountNote 操作的 Post 事件在我期望 Get 事件触发时触发。我想它发生的原因是有道理的,因为渲染 View 的是后操作,但我希望触发 Get 事件。

public ActionResult AccountNote(int id)
{
//code goes here...

return PartialView(model);
}

[HttpPost]
public ActionResult AccountNote(AccountNoteViewModel model)
{
//code goes here...

return PartialView(model);
}

我做错了什么吗?或者我必须采取一些技巧才能使这项工作成功?我希望 Html.RenderAction 始终采用 GET 而不是 POST。

最佳答案

一种解决方案是只有一个 AccountNote() 操作方法。那么无论GET还是POST都会被调用。如果您使用的是 AccountNote() 的 POST 版本,您可能需要稍微修改一下逻辑。

你可以用 [ChildActionOnly] 来装饰它属性。

关于asp.net-mvc-4 - Html.RenderAction 使用 Post 而不是 Get,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19299627/

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