直接上代码:

 <html>
<head>
<meta name="viewport" content="width=device-width" />
<script src="~/Scripts/jquery-1.8.2.js"></script>
<script>
function Test() {
/*
无参数Get $.ajax(
{
url: 'api/values/GetUser',
type: 'get',
//data:{},
success: function (data) {
console.log(JSON.stringify(data));
}
});
*/ /*
单个参数Get
*/
/*$.ajax(
{
url: 'api/values/GetName',
type: 'get',
data: {name:"pingdong"},
success: function (data)
{
console.log(JSON.stringify(data));
}
});
*/ /*Get多个参数Get
$.ajax(
{
url: 'api/values/GetNameAndSex',
type: 'get',
data: {name:'pingdong',sex:'男'},
success: function (data)
{
console.log(JSON.stringify(data));
}
});
*/ /*post 无参数
$.ajax(
{
url: 'api/values/PostNoParmer',
type: 'post',
data: {},
success: function (data) {
console.log(JSON.stringify(data));
}
}
);
*/ /*
post一个参数
$.ajax({
url: 'api/values/PostName',
type: 'post',
data: {"":'pingdong'},
success: function (data)
{
console.log(JSON.stringify(data));
}
});
*/ /*
post多个参数
$.ajax({
url: 'api/values/PostNameAndSex',
type: 'post',
data: {name:'pingdong',sex:'男'},
success: function (data)
{
console.log(JSON.stringify(data));
}
});
*/ /*
post json格式的数据(单条) var mydata = { name: "pingdong", sex: '男' }; $.ajax(
{
url: 'api/values/PostOneJson',
type: 'post',
data: JSON.stringify(mydata),//将mydata转化为字符串
contentType: 'application/json',//默认情况下会出错。因为ajax提交数据默认请求头中的Content-type为:application/x-www-form-urlencoded(即默认的key=value)。而我们需要提交的是json格式的数据,所以需要指定发送到服务端的数据格式:application/json
succsess: function (data)
{
console.log(data);
}
});
*/ /*
post json格式的数据(多条)
var mydata = [
{ name: "pingdong", sex: '男' },
{name:'张三',sex:'男'},
{name:'李四',sex:'男'},
];
$.ajax(
{
url: 'api/values/PostMoreJson',
type: 'post',
data: JSON.stringify(mydata),
contentType: 'application/json',
success: function (data)
{
console.log(JSON.stringify(data));
}
});
*/ /*传递复杂json(示例) var mydata = {
"productPrice": [
{
"priceInfo": [
{
"productid": "77",
"webstileid": "2"
},
{
"productid": "191",
"webstileid": "3"
}
]
},
{
"priceRegex": [
{
"webstileid": "2",
"tid": "6"
},
{
"webstileid": "3",
"tid": "7"
}
]
}
]
};
console.log(JSON.stringify(mydata));
$.ajax(
{
url: 'api/values/PostMoreAndMoreJson',
type: 'post',
data: JSON.stringify(mydata),
contentType: 'application/json',
success: function (data)
{
console.log(JSON.stringify(data));
}
});
*/
} /*
备注;
contentType:指定请求类型 "application/json"
dataType:指定输出类型 "xml"
*/ </script>
<title>Index</title>
</head>
<body>
<div>
<input type="button" onclick="Test()" value="点我" />
</div>
</body>
</html>
 using My_WebApiDemo.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Newtonsoft.Json; namespace My_WebApiDemo.Controllers
{
// [Authentication]
public class ValuesController : ApiController
{ static List<User> userList=new List<User>{new User{ name="张三",password=""},
new User{ name="王五",password=""}};
public List<User> GetUser()
{
return userList;
} public string GetName(string name)
{
return string.Format("你好,我叫{0}.", name);
} public string GetNameAndSex(string name, string sex)
{
return string.Format("你好,我叫{0},性别:{1}", name,sex);
} public List<User> PostNoParmer()
{
return userList;
} /// <summary>
/// 单个参数获取的时候,并不是根据key=value,而是 =value
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
public string PostName([FromBody]string name)
{
return string.Format("你好,我叫{0}.", name);
} /// <summary>
/// 传递两个参数的时候,FromBody只能有一个,所以提供一个对象来获取对应的值
/// </summary>
/// <returns></returns>
public string PostNameAndSex(NameAndSex nameAndsex)
{
return string.Format("你好,我叫{0}.", nameAndsex.name,nameAndsex.sex);
} /// <summary>
/// 接收json格式的数据(单条)
/// </summary>
/// <returns></returns>
public string PostOneJson(NameAndSex nameAndsex)
{ return string.Format("你好,我叫{0}.", nameAndsex.name, nameAndsex.sex); } /// <summary>
/// 接收json格式的数据(多条)
/// </summary>
/// <returns></returns>
public string PostMoreJson(IList<NameAndSex> nameAndsexList)
{
string str = "";
foreach (var item in nameAndsexList)
{
str += string.Format("你好,我叫{0}.", item.name, item.sex);;
}
return str;
} /// <summary>
/// 接收json格式的数据(复杂)
/// </summary>
/// <returns></returns>
public string PostMoreAndMoreJson(Demo demo)
{
return JsonConvert.SerializeObject(demo);
} }
public class NameAndSex
{
public string name { get; set; }
public string sex { get; set; }
} public class Demo
{
public IList<productPrice> productPrice { get; set; }
} public class productPrice
{
public IList<priceInfo> priceInfo { get; set; }
public IList<priceRegex> priceRegex { get; set; }
} public class priceInfo
{
public string productid { get; set; }
public string webstileid { get; set; }
}
public class priceRegex
{
public string webstileid { get; set; }
public string tid { get; set; }
}
}

webApi 数据绑定 获取的更多相关文章

  1. Asp.Net Mvc4 Webapi Request获取参数

    最近用mvc4中的WEBAPI,发现接收参数不是很方便,跟传统的request.querystring和request.form有很大区别,在网上搜了一大圈,各种方案都有,但不是太详细,于是跟踪Act ...

  2. .net core webapi 后台获取客户端ip地址

    Asp.Net Core2.0获取客户IP地址,及解决发布到Ubuntu服务器获取不到正确IP解决办法   1.获取客户端IP地址实现方法(扩展类) 1 using Microsoft.AspNetC ...

  3. WebApi 后台获取token值

    前台传递一个token,后台不知道怎么获取那么不是很悲剧吗. $(function () { $.ajax({ url: "/api/TokensTest/FirstCode", ...

  4. 关于C# winform怎么调用webapi来获取到json数据

    C/S系统也可以和B/S系统一样实现“前后端分离”,那这样写winform就相当于纯粹的前端页面了,然后再单独部署一个webapi项目,通过api调用数据库进行数据的操作,有利于维护和数据安全性的提高 ...

  5. webapi中获取HttpContext

    public OperationResultDto APILogin() { LoginModel model = new LoginModel(); HttpContextBase context ...

  6. c#访问webapi以及获取

    提交post #region XML方式提交        public static void XML() {            HttpWebRequest wReq = (HttpWebRe ...

  7. 关于C# 怎么调用webapi来获取到json数据

      /// <summary>        /// 调用api返回json        /// </summary>        /// <param name=& ...

  8. Mono for android 访问Webservice和WebApi以及获取和解析JSON

    先看效果,注意:(1)这里由于我的模拟器不支持中文输入,所以,对于这张效果图,我是直接在代码中写死了我的查询城市,在下面的代码中我是没有把要查询的城市写死的. (2)读者要想成功使用本示例的所有代码的 ...

  9. ASP.NET WebAPi(selfhost)之文件同步或异步上传

    前言 前面我们讲过利用AngularJs上传到WebAPi中进行处理,同时我们在MVC系列中讲过文件上传,本文结合MVC+WebAPi来进行文件的同步或者异步上传,顺便回顾下css和js,MVC作为客 ...

随机推荐

  1. POJ3070 Fibonacci[矩阵乘法]

    Fibonacci Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 13677   Accepted: 9697 Descri ...

  2. weka

    第一次接触weka这个东西,貌似是数据挖掘用的比较多.接下来一个月里,希望能够对weka有更深一步的了解,并用博客记录下学习weka用法.原理.数据预处理的过程,与君分享,期待!

  3. Win10 Sql2008R2 在关闭【0x80041033】

    以前SQL Server 2008 不能登陆的时候,总是通过“计算机管理”→“SQL Server服务”更改一下,"SQL Server(MSSQLSERVER)".可是现在出现的 ...

  4. 微博公众平台(二)-- Token验证代码

    Token,验证逻辑:1.将Token.timestamp.nonce放入数组 2.将数组从小到大排列 3.将数组按顺序拼装成一个字符串 4.对生成的字符串进行SHA1加密 5.将密文转换为小写 6. ...

  5. Android Monkey压力测试

    Monkey 是Android SDK提供的一个命令行工具, 可以简单,方便地运行在任何版本的Android模拟器和实体设备上. Monkey会发送伪随机的用户事件流,适合对app做压力测试. 1为什 ...

  6. Windows phone应用开发[20]-禁止Pivot手势

    相比Ios 和Android. Windows Phone 控件库中多了两个比较特殊的空间Pivot 枢轴和Panamera 全景视图控件.在基于枢轴控件Pivot中我们经常会碰到一些比较特殊应用场景 ...

  7. PHP7中php.ini、php-fpm和www.conf的配置

    引自:https://typecodes.com/web/php7configure.html 1 配置php.ini php.ini是php运行核心配置文件: ######避免PHP信息暴露在htt ...

  8. iOS学习-KVO设计模式

    KVO 即Key-Value Observing  键-值观察的缩写,简单的说就是通过键来观察一个对象属性值的变化.当这个被观察的属性发生变化时,观察者就会收到通知(观察者可以是这个对象本身,也可以是 ...

  9. android开发之背景音乐与音效

    android开发之背景音乐与音效 一:添加背景音乐(MediaPlayer) MediaPlayer class can be used to control playback of audio/v ...

  10. AOJ DSL_2_E Range Add Query (RAQ)

    Range Add Query 数列 A = {a1,a2,...,an} に対し.次の2つの操作を行うプログラムを作成せよ. add(s,t,x): as,as+1,...,at にxを加算する. ...