我正在尝试将HTTP发布到控制器并将其作为模型返回。我有一个与XML元素具有相同变量的模型。但是,即使XML元素包含数据,其中一些变量还是null。对请求中的XML元素重新排序会导致模型中的变量更改为null,而不会更改。
控制器中的post方法
[AcceptVerbs("POST")]
[HttpPost]
public HttpResponseMessage PostOrder(WebOrderModel model)
{
// Do something with the model
}
模型本身
[DataContract(Namespace="")]
public class WebOrderModel
{
[DataMember]
public string WebOrderId { get; set; }
[DataMember]
public string WebKey { get; set; }
[DataMember]
public string Status { get; set; }
[DataMember]
public string WebMessage { get; set; }
[DataMember]
public string CustomerNo { get; set; }
}
以下发布请求导致CustomerNo,WebKey和WebMessage为空。
<WebOrderModel>
<Status>Test status</Status>
<WebOrderId>Test id</WebOrderId>
<WebMessage>Test message</WebMessage>
<CustomerNo>Test No</CustomerNo>
<WebKey>Test key</WebKey>
</WebOrderModel>