Javascript 将JSON数组集合发布到Asp.net核心Web API

Javascript 将JSON数组集合发布到Asp.net核心Web API,javascript,arrays,json,ajax,asp.net-core-webapi,Javascript,Arrays,Json,Ajax,Asp.net Core Webapi,需要你的专业知识吗 我正在使用JS和Asp.net核心Web API。 我正试图将JSON数组发布到我的API中,但我无法在web API post方法中获取数据。每次都为空,需要帮助了解我缺少的内容 下面是JS代码 function Trails(){ var A = []; var B = []; var MyData = []; for(var i = 0;i <= 2;i++){ var _A = { "ID" : i, "_A" :

需要你的专业知识吗 我正在使用JS和Asp.net核心Web API。 我正试图将JSON数组发布到我的API中,但我无法在web API post方法中获取数据。每次都为空,需要帮助了解我缺少的内容

下面是JS代码

function Trails(){   
var A = [];
var B = [];
var MyData = [];

for(var i = 0;i <= 2;i++){
    var _A = {
        "ID" : i,
        "_A" : "A"+i
    };
    A.push(_A);
}    

for(var i = 0;i <= 2;i++){
    var _B = {
        "ID" : i,
        "_B" : "B"+i
    };
    B.push(_B);
}      

for(var i = 0;i <= 2;i++){
    MyData.push({
        "MyDataName" : "CJ"+i,
        "A" : A,
        "B" : B,
    });
}       

$.ajax({  
    crossDomain: true,
    cache: false,
    type: "POST",  
    url: "https://localhost:44359/api/values/",  
    contentType: "application/json",
    data :JSON.stringify({MyData}), 
    dataType: "json",  
    success: function (data) {                      
        alert(data);          
    }, //End of AJAX Success function  
    failure: function (data) {  
        alert(data.responseText); 
        console.log(data); 
    }, //End of AJAX failure function  
    error: function (data) {  
        alert(data.responseText);  
        console.log(data); 
    } //End of AJAX error function  
});      
}

C类

 public class A
{
    public int ID { get; set; }
    public string _A { get; set; }
}

public class B
{
    public int ID { get; set; }
    public string _B { get; set; }
}

public class MyData
{
    public string MyDataName { get; set; }
    public List<A> A { get; set; }
    public List<B> B { get; set; }

}
WebAPI Post方法

 // POST api/values
    [HttpPost]
    public void Post([FromBody] List<MyData> MyData)
    {

    }
MyData始终为空。请帮助

您使用的是:JSON.stringify{MyData}而不是JSON.stringifyMyData。它作为包含字段MyData和MyData的JSON(而不仅仅是MyData数组)发送到服务器。

将此行data:JSON.stringify{MyData}更改为data:JSON.stringifyMyData,