C# 在.NET中处理发布的JSON值

C# 在.NET中处理发布的JSON值,c#,json,asp.net-mvc,asp.net-web-api,C#,Json,Asp.net Mvc,Asp.net Web Api,全部, 我正在开发一个web服务,它使用JSON负载侦听帖子。 我在VisualStudio2015中创建了一个web应用程序项目,它提供了一个简单的API控制器。当我向POST处理程序发送测试时,在控制器中接收到的值为null,即使我发送的是JSON负载 我做错了什么,在这里 我怀疑在我名为“value”的帖子中,我需要某种类型的绑定,但由于我收到了一个原始的JSON负载,我无法真正影响绑定 我正在发送的有效负载 在“value”参数值中返回null 您需要将[System.Web.Http

全部,

我正在开发一个web服务,它使用JSON负载侦听帖子。 我在VisualStudio2015中创建了一个web应用程序项目,它提供了一个简单的API控制器。当我向POST处理程序发送测试时,在控制器中接收到的值为null,即使我发送的是JSON负载

我做错了什么,在这里

我怀疑在我名为“value”的帖子中,我需要某种类型的绑定,但由于我收到了一个原始的JSON负载,我无法真正影响绑定

我正在发送的有效负载

在“value”参数值中返回null

您需要将[System.Web.Http.HttpPost]属性放入您的操作/方法中

创建一个模型来存储发送的数据

public class Payload {
    public string type { get; set;}
    public string id { get; set;}
    public long creates_at { get; set;}
    public long updated_at { get; set;}
    public string service_type { get; set;}
    public string[] topics { get; set;}
    public string url { get; set;}
    public bool active { get; set;}
    public string hub_secret { get; set;}
}
并更新控制器操作以接受有效负载

public class ValuesController : ApiController {
    //POST api/values
    public void Post([FromBody] Payload value) {...}    
}

这还假设您正在使用默认的基于约定的路由temaplate
api/{controller}/{id}

,这正是我所缺少的。感谢以后的参考,不要张贴代码的图片。将代码作为一个示例,以便重现问题并提供更好的答案。省去了那些试图帮助你从头开始写东西的人。