1、get请求,传输基础类型数据
[HttpGet]public string GetTestData(int id,string name){ return id+name;}$.ajax({ type:"get", url:"http://xxxx/api/Test/GetTestData", data: { id: 1, name:"lili"}, success:function(data, status) { }});2、get请求,传递实体数据
public class TestModel{ public string ID {get;set; } public string Name {get;set; }}[HttpGet]public string GetTestDataByModel([FromUri]TestModel testModel){ return testModel.ID+testModel.Name;}$.ajax({ type:"get", url:"http://xxx/api/Test/GetTestDataByModel", data: { ID:"1", Name:"lili"}, success:function(data, status) { }});3、post请求,传递基础类型参数
$.ajax({ type:"post", url:"http://xxx/api/Test/PostTestData", data: {"":"lili"}, success:function(data, status) {} });注意:不能使用 data: {“name”:”lili”}。因为FromBody的机制是=value,没有key的概念。
[HttpPost]public bool PostTestData([FromBody]string name){ return true;}4、post请求,传递实体类型参数
[HttpPost]public bool PostTestDataModel(TestModel testModel){ return true;}public class TestModel{ public string ID {get;set; } public string Name {get;set; }}$.ajax({ type:"post", url:"http://xxx/api/Test/PostTestDataModel", data: { ID:"1", Name:"lili"}, success:function(data, status) {} });或者
var postdata = { ID:"1", Name:"lili"};$.ajax({ type:"post", url:"http://xxx/api/Test/PostTestDataModel", contentType:'application/json', data: JSON.stringify(postdata), success:function(data, status) {}});若是没定义接口的实体类,可以使用类型dynamic。
5、post,传递基础类型数组
var arr = ["1","2","3","4"];$.ajax({ type:"post", url:"http://xxx/api/Test/PostTestDataArray", contentType:'application/json', data: JSON.stringify(arr), success:function(data, status) { } });[HttpPost]public bool PostTestDataArray(string[] ids){ return true;}6、post,传递实体集合
var arr = [ { ID:"1", Name:"l1"}, { ID:"2", Name:"l2"}, { ID:"3", Name:"l3"} ]; $.ajax({ type:"post", url:"http://xxx/api/Test/PostTestDataList", contentType:'application/json', data: JSON.stringify(arr), success:function(data, status) {} });[HttpPost]public bool PostTestDataList(List<TestModel> mList){ return true;}补充:许多场景可以通过使用dynamic和json来传递和接收对象以达到简化问题的效果。