.net WebAPI 传递对象参数

  通过试验发现,客户端传递的json数据中,多一个属性不会影响。json

 

少一个属性,也可以正常转换为对象,少的属性会为null。ide

 

当我服务端接受一个集合类型的时候,ui

public HttpResponseMessage PutData(IEnumerable<ClientExpConfigRequestModel> requestModels)
        {
            var httpStatusCode = HttpStatusCode.OK;
            return new HttpResponseMessage(httpStatusCode);
        }
View Code
public class ClientExpConfigRequestModel
    {
        public Guid FieldId { get; set; }

        public string FieldLabel { get; set; }

        public string FieldName { get; set; }

        public Nullable<int> SortNum { get; set; }

        public Nullable<bool> IsIncluded { get; set; }
    }
View Code
 public HttpResponseMessage PutData(dynamic requestModels){}
View Code

 

客户端传递,[{id:1}]都可以走到后台方法,list的count为1,全部属性都为null,由于没有一个属性是匹配的。spa

当我我传递{id:1},bad Request, 400,由于须要的是集合类型,我传递的是单个对象。 把服务端接受参数改成dynamic后,也可以进入服务端方法,格式是:{requestData},包裹了一层object对象。code

相关文章
相关标签/搜索