我想从jQuery发布到我的ASP.NET Core(RC1)API。当我通过HttpClient进行POST时,它工作正常,所以我认为这只是我错过的一件愚蠢的事情。ASP.NET Core:从jQuery发布复杂类型总是导致'null'model
我可以重现我的问题在香草默认ASP.NET 5项目和此代码。
服务器
namespace WebApplication1.Controllers
{
[Route("api/[controller]")]
public class ValuesController : Controller
{
[HttpPost]
public IActionResult Post([FromBody]Model input)
{
// input is always null
return Json(input.Value);
}
public class Model
{
public string Value { get; set; }
}
}
}
客户
$.ajax({
url: "http://localhost:5000/api/values",
method: "POST",
contentType: "application/json",
dataType: "json",
data: JSON.stringify({
Value: "some_value"
})
}).done(function(data) {
console.log("Done.", data);
});
我发挥各地通过删除[FromBody]
,返回一个模型,但从未填充性能。我也尝试了类似的问题的解决方案和解决方法,但我认为它们不适用于.NET Core或仅解决使用简单类型的问题。例如Web Api Parameter always null或using jQuery post to ASP.Net webapi或http://encosia.com/using-jquery-to-post-frombody-parameters-to-web-api/