// 这是方法体,能进来,就是那个parm始终是NULL
public IList Post([FromBody]PostParameters parm)
{
GetCustomersList getCustomersList = new GetCustomersList();
return getCustomersList.GetPotentialCustomersList(parm.KeyWord, Convert.ToBoolean(parm.IsImportant));
}
//这个是那个parm实体类
public class PostParameters
{
string _KeyWord;
string _IsImportant;
public string KeyWord
{
get { return _KeyWord; }
set { _KeyWord = value; }
}
public string IsImportant
{
get { return _IsImportant; }
set { _IsImportant = value; }
}
}
//这是我简化了的方法体
public string Post([FromBody]string parm)
{
return parm;
}
我用JQUERY调用那个简化了的方法,始终获取不到。
$(function () {
$.ajax({
type: 'POST',
url: 'http://localhost:60902/api/Customers',
data: {"":"sdfdsfdsfds"},
//data: {},
contentType: "application/JSON",
dataType: "JSON",
success: function (results) {
//$.getJSON("api/customers", LoadCustomers);
alert(results);
}, error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
}
})
});
以下是几个我从网上查到的解决方案,并且已经做了的:
1。加上[frombody]标记,
2.content type 加上 application/json
3.方法中只有一个参数。
4.如果是简单参数,使用"":"value值"的方式。
但是就是始终是NULL。怎么都不行。求助啊