web api JSON模型为空

web api JSON模型为空,json,asp.net-web-api,Json,Asp.net Web Api,当我将json响应发送回我的api时,模型为report null且不更新。我已经将内容类型设置为application/json 请求: public HttpResponseMessage Post([FromUri] Response response) { try { if (ModelState.IsValid) { using (NPSEntities entities = new NPSEntities())

当我将json响应发送回我的api时,模型为report null且不更新。我已经将内容类型设置为application/json

请求

public HttpResponseMessage Post([FromUri] Response response)
{
    try
    {
        if (ModelState.IsValid)
        {
            using (NPSEntities entities = new NPSEntities())
            {
                entities.Responses.Add(response);
                entities.SaveChanges();
                return Request.CreateResponse(HttpStatusCode.OK);
            }
        }
        else
        {
            return Request.CreateResponse(HttpStatusCode.InternalServerError, "Invalid Model");
        }
    }
    catch (Exception ex)
    {
        return Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message);
        throw;
    }
}
public partial class Response
{
    public int ResponseID { get; set; }
    public string SurveyID { get; set; }
    public string QuestionID { get; set; }
    public string Responses { get; set; }
    public Nullable<System.DateTime> ModifyDate { get; set; }
}
[{“调查ID”:“55”,“问题ID”:“4”,“回答”:6},{“调查ID”:“55”,“问题ID”:“12”,“回答”:“1”}]

控制器

public HttpResponseMessage Post([FromUri] Response response)
{
    try
    {
        if (ModelState.IsValid)
        {
            using (NPSEntities entities = new NPSEntities())
            {
                entities.Responses.Add(response);
                entities.SaveChanges();
                return Request.CreateResponse(HttpStatusCode.OK);
            }
        }
        else
        {
            return Request.CreateResponse(HttpStatusCode.InternalServerError, "Invalid Model");
        }
    }
    catch (Exception ex)
    {
        return Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message);
        throw;
    }
}
public partial class Response
{
    public int ResponseID { get; set; }
    public string SurveyID { get; set; }
    public string QuestionID { get; set; }
    public string Responses { get; set; }
    public Nullable<System.DateTime> ModifyDate { get; set; }
}
型号

public HttpResponseMessage Post([FromUri] Response response)
{
    try
    {
        if (ModelState.IsValid)
        {
            using (NPSEntities entities = new NPSEntities())
            {
                entities.Responses.Add(response);
                entities.SaveChanges();
                return Request.CreateResponse(HttpStatusCode.OK);
            }
        }
        else
        {
            return Request.CreateResponse(HttpStatusCode.InternalServerError, "Invalid Model");
        }
    }
    catch (Exception ex)
    {
        return Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message);
        throw;
    }
}
public partial class Response
{
    public int ResponseID { get; set; }
    public string SurveyID { get; set; }
    public string QuestionID { get; set; }
    public string Responses { get; set; }
    public Nullable<System.DateTime> ModifyDate { get; set; }
}
公共部分类响应
{
公共int响应ID{get;set;}
公共字符串SurveyID{get;set;}
公共字符串QuestionID{get;set;}
公共字符串响应{get;set;}
公共可为空的ModifyDate{get;set;}
}

我看到的第一个问题是,您正在发送一个对象数组,但您的方法只需要一个对象。尝试将方法签名更改为
IEnumerable response
。谢谢。我找到了它,而不是使用
IEnumerable response
我使用了
List response
并反序列化了对象