ASP.Net Web-api 不可多得的零基础教程1
2018-04-04 16:16
399 查看
Asp.Net提供的Web-Api是一个很好用的Api工具,很头疼的是极少有零基础入门教程。让我们一起学习吧!看之前我觉得你需要有C#基础知识,Http数据请求和响应的基础知识,html基础知识。
1.创建工程。打开vs ,我的是2013版本,新建一个Asp.Net MVC 4 web 应用程序。
2.选择web -api模板,web -api全称太麻烦了,以后简称api吧。
现在,一个api工程就建好了。
3.在解决方案的models文件夹上右键新建一个model类
这里,我新建了一个学生类:
public class Student { public int Id { get; set; } public string Name { get; set; } public char Sex { get;set; } public int Age { get;set; } public Student(int id,string name,char sex,int age) { this.Id = id; this.Name = name; this.Sex = sex; this.Age = age; } }
Tips:其中只是设置了几个属性,一个构造函数。这几个属性有点C#基础的话都能看懂,不多解释了。我们来说说为什么创建了一个Model类。实际上和普通的类没有什么差别,就相当于我们封装了一个类便于管理是一个意思。所以把一个对象的属性整合起来构成一个Model也就是模型的意思,实际上还是用于封装。
4.在解决方案的controller上右键新建一个MVC 4 controller
Tips:什么是Controller,从来没听说过啊,作为只有C#基础的小白的我也着实蛋疼,不过查阅了好多资料还不如自己多琢磨一下案例。。。这里的Controller可以理解为管理工具,这个工具是用来和客户端进行交互的。既然你能找到web-api,你就一定知道它是用来干啥的----作为服务端提供给客户端数据交互的。所以这个类就是用于和客户端交互的,当然是基于HTTP语言的交互啦!
5.这里,我们需要有数据交互,所以创建了一个静态链表,并在静态构造函数中实例化初始化了一下。
public class StudentController : ApiController { private static List<Student> list=null; static StudentController() { list = new List<Student>() { new Student(1,"zhangsan",'男',20), new Student(2,"lisi",'女',21), new Student(3,"wangwu",'男',22), new Student(4,"zhaoliu",'女',23) }; } }
6.我们开始写方法了:首先,HTTP请求的时候基本上会有GET(客户端获取数据)、POST(客户端添加数据)、PUT(客户端修改数据)、DELETE(客户端删除数据)请求(还有其他的,自己查阅相关资料吧)。
先来看一个GET操作,也就是客户端获取数据的请求,我们的服务器端Controller会来处理。
//用于获取所有数据 // GET: /api/Student/ public IEnumerable<Student> GetStudent() { return list; } //用于获取符合id的数据 // GET: /api/Student/id public Student GetStudent(int id) { return list.Where((s) => s.Id == id).SingleOrDefault(); }
这里写了两个函数,你会发现这两个函数有个共同特点就是函数名一样的,都是Get开头的,并且后缀都是Student,好熟悉的名字,当然了,我们创建的Controller的名字就是StudentController,就是它。
函数里面用到了LinQ技术,不会的话查阅相关资料吧,这些都是C#的基础知识。当然也可以采用普通不过的方法。
接下来,我们写添加数据的函数没错,命名肯定是PostStudent!
//用于添加数据 // POST: /api/Student/ public void PostStudent( [FromBody] Student value) { list.Add(value); }
这里用到了一个参数,前面加了【FromBody】这句话就是一个修饰,意思是具体的数据来源于客户端Post请求的正文部分。
下面是put修改数据
//用于修改数据 // PUT: /api/Student/id public void PutStudent(int id, [FromBody] Student value) { list.Remove(list.Where((p) => p.Id == id).Single()); list.Add(value); }
最后是Delete删除数据
//用于删除数据 // DELETE: /api/Student/id public void DeleteStudent(int id) { list.Remove(list.Where((p) => p.Id == id).Single()); }
7.快开始测试吧!
端口号可能有所不同,大家根据自己的端口号进行测试。
本次教程至此结束!请关注后续教程!
相关文章推荐
- Asp.Net Web-api 不可多得的零基础教程9
- ASP.Net Web-api 不可多得的零基础教程4
- ASP.Net Web-api 不可多得的零基础教程3
- ASP.Net Web-api 不可多得的零基础教程6
- ASP.Net Web-api 不可多得的零基础教程7
- ASP.Net Web-api 不可多得的零基础教程2
- ASP.Net Web-api 不可多得的零基础教程8
- Asp.Net Web-api 不可多得的零基础教程10
- [ASP.NET 教程] 一. Web基础
- C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志
- Asp.Net Web API VS Asp.Net MVC
- Asp.Net Core WebApi中接入Swagger组件(初级)
- Gitlab CI 自动部署 asp.net core web api 到Docker容器
- 初试ASP.NET Web API/MVC API(附Demo)
- A Book Store Application Using AngularJS and Asp.Net Web Api
- 在ASP.NET Core Web API上使用Swagger提供API文档
- Asp.net core WebApi 使用Swagger生成帮助页实例
- ASP.NET三层架构基础详细操作图文教程(四)
- 在ASP.NET Core Web API上使用Swagger提供API文档
- Asp.net Core WebApi--(1)环境搭建