Asp.net mvc 4 传入消息的反序列化
Json从客户端发送到我的api控制器 消息Asp.net mvc 4 传入消息的反序列化,asp.net-mvc-4,asp.net-web-api,Asp.net Mvc 4,Asp.net Web Api,Json从客户端发送到我的api控制器 消息 {"todo":{"title":"jo","isCompleted":false,"isDeleted":false,"testFK":null}} 我将列出不同的消费服务器端方法,它们应该接收转换为对象的消息 public void Post(TaskEntity todo) { using (var context = new ToDoEntities()) { context.Tasks.Add(todo.T
{"todo":{"title":"jo","isCompleted":false,"isDeleted":false,"testFK":null}}
我将列出不同的消费服务器端方法,它们应该接收转换为对象的消息
public void Post(TaskEntity todo)
{
using (var context = new ToDoEntities())
{
context.Tasks.Add(todo.ToEf());
context.SaveChanges();
}
}
todo
参数为空
public void Post(UpdateTodoInputMessage message)
{
using (var context = new ToDoEntities())
{
context.Tasks.Add(todo.todo.ToEf());
context.SaveChanges();
}
}
消息类
namespace MvcApplication1.Messages
{
[DataContract]
public class UpdateTodoInputMessage
{
[DataMember]
public TaskEntity todo { get; set; }
}
}
消息类的todo
属性为空
如果我将post方法更改为字符串,那么我的客户端将收到一个405方法,这是不允许的
我不知所措,希望得到一些帮助,了解字符串的反序列化是如何进行的,以及为什么我会得到这些奇怪的结果。原因是我的任务实体类没有空构造函数发现问题需要空构造函数
public void Post(string message)
{
using (var context = new ToDoEntities())
{
// context.Tasks.Add(todo.todo.ToEf());
// context.SaveChanges();
}
}