webApi 数据绑定 获取
直接上代码:
<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 数据绑定 获取的更多相关文章
- Asp.Net Mvc4 Webapi Request获取参数
最近用mvc4中的WEBAPI,发现接收参数不是很方便,跟传统的request.querystring和request.form有很大区别,在网上搜了一大圈,各种方案都有,但不是太详细,于是跟踪Act ...
- .net core webapi 后台获取客户端ip地址
Asp.Net Core2.0获取客户IP地址,及解决发布到Ubuntu服务器获取不到正确IP解决办法 1.获取客户端IP地址实现方法(扩展类) 1 using Microsoft.AspNetC ...
- WebApi 后台获取token值
前台传递一个token,后台不知道怎么获取那么不是很悲剧吗. $(function () { $.ajax({ url: "/api/TokensTest/FirstCode", ...
- 关于C# winform怎么调用webapi来获取到json数据
C/S系统也可以和B/S系统一样实现“前后端分离”,那这样写winform就相当于纯粹的前端页面了,然后再单独部署一个webapi项目,通过api调用数据库进行数据的操作,有利于维护和数据安全性的提高 ...
- webapi中获取HttpContext
public OperationResultDto APILogin() { LoginModel model = new LoginModel(); HttpContextBase context ...
- c#访问webapi以及获取
提交post #region XML方式提交 public static void XML() { HttpWebRequest wReq = (HttpWebRe ...
- 关于C# 怎么调用webapi来获取到json数据
/// <summary> /// 调用api返回json /// </summary> /// <param name=& ...
- Mono for android 访问Webservice和WebApi以及获取和解析JSON
先看效果,注意:(1)这里由于我的模拟器不支持中文输入,所以,对于这张效果图,我是直接在代码中写死了我的查询城市,在下面的代码中我是没有把要查询的城市写死的. (2)读者要想成功使用本示例的所有代码的 ...
- ASP.NET WebAPi(selfhost)之文件同步或异步上传
前言 前面我们讲过利用AngularJs上传到WebAPi中进行处理,同时我们在MVC系列中讲过文件上传,本文结合MVC+WebAPi来进行文件的同步或者异步上传,顺便回顾下css和js,MVC作为客 ...
随机推荐
- java 经典程序 100 例
1,编写程序,判断给定的某个年份是否是闰年.闰年的判断规则如下:( 1)若某个年份能被 4 整除但不能被 100 整除,则是闰年.( 2)若某个年份能被 400 整除,则也是闰年. import ja ...
- python基础之编码问题
python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode--->utf-8(utf-16和u ...
- C/C++编程语言学习资料尽收眼底 电子书+视频教程
Visual C++(VC/MFC)学习电子书及开发工具下载请看这里 史无前例的网络最全最强C/C++资料索引: C/C++编程语言学习资料尽收眼底 电子书+视频教程 VC++/MFC(VC6)开发技 ...
- C#调用LUA函数
using UnityEngine; using System.Collections; using LuaInterface; public class testLUACALL : MonoBeha ...
- gradle项目中资源文件的相对路径打包处理技巧
开发java application时,不管是用ant/maven/gradle中的哪种方式来构建,通常最后都会打包成一个可执行的jar包程序,而程序运行所需的一些资源文件(配置文件),比如jdbc. ...
- .Net开源微型ORM框架测评
什么是ORM? 对象关系映射(英语:Object Relation Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间 ...
- Java--笔记(6)
51.jsp的运行周期 jspt生命周期:init .service.destory 除了init只初始化一次外(第一次运行jsp的时候执行),其他 用户端运行JSP时方法都会运行一次. 52.二叉树 ...
- android 自定义Style初探---ProgressBar
系统自带的ProgressBar太丑了,所以我决定自定义一个Style. 原来的Style <?xml version="1.0" encoding="utf-8& ...
- js实现由分隔栏决定两侧div的大小—js动态分割div
/*================index.html===================*/ <!DOCTYPE html><html lang="zh-cn&quo ...
- jQuery控制表头
<!doctype html><html lang="en"><head> <meta charset="UTF-8" ...