1.命名空间引用,和mvc 引用的命名空间不一样,但是有些类名相同。引错了就够你找半天儿的~~~ web api 大多数都在 system.net .http 下
using System.Net;
using System.Net.Http;
using System.Net.Http.Headers;
比如标记 post 或者 get 的特性就有两个
[System.Web.Http.HttpGet] -- webapi识别
[System.Web.Mvc.HttpGet] -- webapi不认,标记了也没用
正确的
[System.Web.Http.HttpGet]
[System.Web.Http.HttpPost]
public TestResult Test([FromBody]TestRequest pars)
{
var result = new TestResult()
{
des="模型绑定测试",
msg=pars==null?"绑定失败":"绑定成功",
data=pars
};
return result;
}
2.再说下参数绑定[FromBody]
两个注意:都是请求时的细微变化,稍不注意参数就接不到。
2.1 请求时标记 contentType=“application/json;charset=UTF-8”
2.2 请求时不要使用post表单的key=value结构。而是直接将 json 串 post 到指定url
记录的内容很短,但都是眼泪啊~~~~~