我正在编写一个非常基础且易破解的React和c#/。NET应用程序,以尝试提高我的技能。 我正在从前端发送axios请求,但是当它遇到路由时,数据始终为空。
从前端拨打电话
axios
.post(URL, {
"name": "me",
"text": "Hello World",
"date": "today",
"userId": 1
})
.then(res => {return res})
我的留言班
public class Message
{
[Key]
public int MessageId { get; set; }
public string Date { get; set; }
public string Text { get; set; }
public int UserID { get; set; }
}
}
我的控制器方法
public async Task<object> Post(Message message)
{
using (var context = new DbContext())
{
System.Diagnostics.Debug.WriteLine(message);
context.Messages.Add(message);
await context.SaveChangesAsync();
}
}
当我调试并击中断点时,我所有的值都为空。
我在这里想念什么?
答案 0 :(得分:0)
答案是将[FromBody]
属性放在这样的参数之前
public async Task<object> Post([FromBody] Message message)
{
using (var context = new DbContext())
{
System.Diagnostics.Debug.WriteLine(message);
context.Messages.Add(message);
await context.SaveChangesAsync();
}
}
感谢对我的原始帖子的评论!