发布到服务器时,Post参数为null

时间:2017-06-19 14:31:53

标签: c# asp.net postman

我使用以下控制器方法:

[HttpPost]
public HttpResponseMessage CoreLog([FromBody]PAV model)
{
   //Process model
}

在VS中运行我的ASP.net Web应用程序的本地实例并发布到http://localhost:53270/api/bundle/Corelog时,CoreLog控制器方法正在接收一个正确的填充模型。

但是,在将Web应用程序发布到服务器(Windows Server 2012 R2)并通过ISS进行托管时,发布相同的消息(即使在发布到服务器本身的本地主机上时)也会导致模型在收到后为null

通过Postman发帖时,我确保content-type设置为application/json

导致这种情况的原因是什么?

型号:

public class PAV
{
    public string Name { get; set; }
    public string eID { get; set; }
}

发表JSON:

{ 
   "Name":"Test",
   "eID":"12345" 
}

谢谢!

1 个答案:

答案 0 :(得分:1)

从我的角度来看,您需要将DataContract属性添加到PAV实体

 [DataContract]
 public class PAV
 {
    [DataMember]
    public string Name { get; set; }

    [DataMember]
    public string eID { get; set; }
 }

请找到documentation