我们需要提交表单并保存一些数据,然后将用户重定向到异地页面,但在重定向时,我们需要使用POST"提交"表单,而不是GET.
我希望有一个简单的方法来实现这一目标,但我开始认为没有.我想我现在必须创建一个简单的其他页面,只需要我想要的表单,重定向到它,填充表单变量,然后对只调用document.forms [0] .submit的脚本执行body.onload调用( );
任何人都可以告诉我是否有其他选择?我们可能需要稍后在项目中调整它,它可能会变得有点复杂,所以如果有一个简单的我们可以做到这一切所有非其他页面依赖,这将是太棒了.
无论如何,感谢任何和所有的回应.
我想这样叫MarriageByIdGET:
var url = '/MarriageById?id=' + id;
Run Code Online (Sandbox Code Playgroud)
但我也想拥有一个ActionResult Marriage(Marriage marriage)可以在显示视图之前进行一些处理的单元。第二个原因必须是POST因为它还将收到来自asp的“发送表单”。
我正在尝试此解决方案(请参见下面的我自己的实现),但仍将其作为GET重定向,ActionResult Marriage但未找到:
[HttpGet]
public ActionResult MarriageById(int id)
{
var marriage = _marriageRepository.GetById(id);
return RedirectToAction(nameof(Marriage), marriage);
}
[HttpPost]
public ActionResult Marriage(Marriage marriage)
{
var people = _personRepository.GetAll();
ViewBag.men = Utils.GetPersonsSelectListByGender(people, isMale: true);
ViewBag.women = Utils.GetPersonsSelectListByGender(people, isMale: false);
return View(marriage);
}
Run Code Online (Sandbox Code Playgroud)