【发布时间】:2017-02-17 12:03:45
【问题描述】:
所有相关代码:
//JSON data
var dataType = 'application/json; charset=utf-8';
var data = {
FirstName: 'Andrew',
LastName: 'Lock',
Age: 31
}
console.log('Submitting form...');
$.ajax({
type: 'POST',
url: '/Diary/Save',
dataType: 'json',
contentType: dataType,
data: data,
success: function (result) {
console.log('Data received: ');
console.log(result);
}
});
[HttpPost]
public IActionResult Save([FromBody] Person person)
{
return Json(person);
}
public class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
public int Age { get; set; }
}
Save 方法中的“person”始终为空。这应该可以工作...感觉可能是设置问题?我需要在此处进行更改吗:
services.AddMvc(options =>
{
});
【问题讨论】:
-
我在 Ajax 方法中执行此操作.. data: JSON.stringify(dataType),然后在控制器操作中我取出 [FromBody]
-
我认为你必须在 .net 核心中做一些其他的事情才能让它在没有 [FromBody] 的情况下工作(不过我已经尝试过你的建议,仍然都是空值)
-
您正在向
/Diary/Index发帖,但该函数名为Save。这只是此处帖子中的错误还是您正在运行此特定代码? -
发帖出错抱歉,谢谢
-
你为什么写
contentType: dataType?你不能像那样引用它上面的属性。
标签: jquery asp.net ajax asp.net-core asp.net-core-mvc