我有更多的Jquery Ajax调用或类似下面的
$.ajax(url, {
type: httpMethod,
contentType: "application/json; charset=utf-8",
data: '{name:"abc",age:23,address:"29 judd ce"}',
网络API动作
public HttpResponseMessage Post([FromBody] FormDataCollection data)
{
但参数'data'始终为null。
这是一个web api限制还是我做错了
由于
答案 0 :(得分:1)
改为使用视图模型:
public class UserViewModel
{
public string Name { get; set; }
public int Age { get; set; }
public string Address { get; set; }
}
您的控制器操作将采取:
public HttpResponseMessage Post(UserViewModel model)
{
...
}
答案 1 :(得分:0)
它可能
$.ajax("http://localhost:57281/api/Values", {
type: "POST",
data: '{name:"abc",age:23,address:"29 judd ce"}',
contentType: "application/x-www-form-urlencoded"
});
//POST api/values
public void Post([FromBody]FormDataCollection value)
{
}
没有[FromBody]
也能正常工作
但是你只能获得一对键/值
更好地使用类似的东西
$.ajax("http://localhost:57281/api/Values", {
type: "POST",
data: 'name=abc&age=23&address=29 judd ce',
contentType: "application/x-www-form-urlencoded"
});
&安培;用作每对
的分隔符