将复杂的javascript对象传递给控制器​​。对象列表始终为0

时间:2018-04-24 14:01:50

标签: javascript c# angular

我有一个对象,我试图传递给我的C#控制器。除了我拥有的列表总是count = 0之外,所有属性都会被填充。我已经尝试将标题设置为content-type / json和Json.stringify。另外,为了测试,我将从另一个调用中返回产品列表,因此我知道这将返回我的视图中正确格式化的产品列表。

创建请求的示例

 var request =
'Id':null, 
...
... rest of data is here standard properites
 ...
'Products':productlist

对于产品列表我当前正在使用返回List的调用的返回值

        return $http.post('api/Enty/Save', request )
        .error(function (data, status, headers, config) {
               errorLog('error: ' + data);
           });



public class Person:IPerson
{
    [Required]
    public int Id { get; set; }

    [MaxLength(90)]
    public String Address1 { get; set; }

    [MaxLength(90)]
    public String Address2 { get; set; }

    [MaxLength(40)]
    public String Address3 { get; set; }

    [MaxLength(40)]
    public String City { get; set; }

    [MaxLength(2)]
    public String State { get; set; }

    [MaxLength(40)]
    public String Province { get; set; }

    [MaxLength(10)]
    public String Zip { get; set; }

 public IList<IProduct> Products { get; set; }


}


    [HttpPost()]

    public Response Save(person r)
    {}

更新

如果我将它设为List而不是IList,它就可以了。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

原来问题不是Ilist而是Iproduct。我刚刚改为该属性的具体类