Angular2发布复杂类型到MVC操作的列表

时间:2017-05-16 00:48:12

标签: angular typescript angular2-forms

我遇到了一个问题,我需要将一个复杂类型列表从Angular2发布到MVC动作。问题是当我传递数组时,我总是为参数获取null。如果单个对象,它可以完美地工作。请看下面的代码: 第一个操作获取已发布的对象,但第二个操作始终为null。

   [HttpPost]
    public JsonResult Submit(Parent parent)
    {
        return Json(new { data = "some message" }, JsonRequestBehavior.AllowGet);
    }

以下内容为空

   [HttpPost]
    public JsonResult Submit(List<Parent> parents)
    {
        return Json(new { data = "some message" }, JsonRequestBehavior.AllowGet);
    }


public class Parent
{
    public int Id { get; set; }
    public string Text { get; set; }     
    public bool? IsCompleted { get; set; }   
    public string UserResponse { get; set; }    
    public Dictionary<int, bool> SelectedItemsIds { get; set; }      

    public virtual List<Child> Children { get; set; }
    public virtual List<AnotherChild> Representations { get; set; }
    public List<Parent> Drived { get; set; }
}

public class Child
{
    public int Id { get; set; }
    public string Name { get; set; }
}

public class AnotherChild
{
    public int Id { get; set; }
    public string HeaderText { get; set; }

}

这就是我的尝试:

submita(): Observable<string> {
    let headers = new Headers({ "Content-Type": "application/json" });
    let options = new RequestOptions({ headers: headers }); 
    var resp = this.http.post('/Home/Submit', this.parents, options)
        .map((response: Response) => <string>response.json().data)
        .catch(this.handleError);
    return resp;
}

this.parents是父类的数组,它具有与服务器端类相同的属性 任何帮助将不胜感激 请注意,问题似乎与我发布到服务器的数据大小有关。任何我可以增加的想法? 我在网络配置中尝试了以下内容,但它没有修复它。

    <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="2147483648" />
      </requestFiltering>
    </security>

0 个答案:

没有答案