您可以将对象传递给 MVC post 操作吗?

Can you pass an object to MVC post action?

我有这个 MVC post 操作

 [HttpPost]
  public ActionResult PostHere(SomeRandomResult result)
{
 return View();
}

我想传递的对象:

public class SomeRandomResult
{
public string firstName {get; set;}
public string lastName {get; set;}
}

查看:

<form method="post">
    <input type="text" id="first-name" name="firstName">
    <input type="text" id="last-name" name="lastName">
    <input type="submit" value="click me"/>
</form>

问题是当我在表单中单击提交时,我希望自动填充 SomeRandomResult 中的值。当我现在点击提交时,post 方法中的对象为空。如何从 firstName 和 lastName 获取值?

你的post正文应该是某种对象符号,JSON很流行

{
  "firstName": "John",
  "lastName": "Wick"
}

那么你的签名就变成了

public ActionResult PostHere([FromBody]SomeRandomResult result)