gpt4 book ai didi

asp.net-core - 如何在 MVC Visual Studio 2015 中发布 JSON 数据

转载 作者:行者123 更新时间:2023-12-04 23:00:22 25 4
gpt4 key购买 nike

我正在尝试在 Visual Studio 2015 预览版中将 json 对象发布到 MVC。但是,数据似乎没有绑定(bind)到操作方法参数。在以前版本的 MVC 中曾经注册过一个 JsonValueProviderFactory 来处理这个问题,但我似乎在 MVC6 中找不到它?设置是否发生了变化,这在以前的版本中是开箱即用的吗?

基本上我有一个 Controller 方法

public ActionResult Save(Person person)
{
...
}

我试图从javascript调用:
var personData = { Name : 'John Doe' };
$.ajax({
url: '@Url.Content("~/Person/Save")',
type: "POST",
data: JSON.stringify(personData ),
dataType: "json",
contentType: "application/json; charset=utf-8"
})

在之前的MVC版本中,json对象映射到c#参数,
例如看这篇文章 http://webcognoscere.com/post/How-to-POST-a-JSON-object-to-a-Controller-Action.aspx

最佳答案

添加 [FromBody]到参数。在 MVC 6 中,来自 MVC 和 Web API 的逻辑被合并到一个系统中。这意味着需要从帖子正文中反序列化为 JSON 的内容需要在 action 方法的参数中明确指出:

public ActionResult Save([FromBody] Person person)
{
...
}

关于asp.net-core - 如何在 MVC Visual Studio 2015 中发布 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27151486/

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