现在的互联网应用,无论是web应用,还是移动APP,基本都需要实现非常多的数据访问接口。其实对一些轻应用来说Asp.net WebAPI是一个很快捷简单并且易于维护的后台数据接口框架。下面我们来快速构建一个基础数据操作接口。

  1. 新建项目

  2. 选择WebApi,并使用空模板(这里不想要一些其他的mvc的东西)

  3. 新建一个model

  4. 写几个属性

namespace WebApplication3.Models

{

public
class
Test

{

public
int id { set; get; }

public
string name { set; get; }

}

}

  1. 新增控制器

    这里也用了空的控制器,避免多余代码干扰,其实后期可以写CodeSmith模板生成。

  2. 添加代码

using System.Collections.Generic;

using System.Linq;

using System.Web.Http;

using WebApplication3.Models;

namespace WebApplication3.Controllers

{

public
class
TestController : ApiController

{

Test[] products = new
Test[]

{

new
Test { id = 1, name = "Tomato Soup"},

new
Test { id = 2, name = "Yo-yo" },

new
Test { id = 3, name = "Hammer" }

};

public
IEnumerable<Test> GetAllProducts()

{

return products;

}

public
IHttpActionResult GetProduct(int id)

{

var product = products.FirstOrDefault((p) => p.id == id);

if (product == null)

{

return NotFound();

}

return Ok(product);

}

[HttpPost]

public
IHttpActionResult PostTest([FromBody]Test t)

{

var product = products.FirstOrDefault((p) => p.id == t.id);

if (product == null)

{

return NotFound();

}

return Ok(product);

}

}

}

  1. 运行页面

    这里注意路由规则,api/控制器名称/id

  2. 也许你会说,我希望返回JSON格式的,好吧,增加下面两句。

    其实就是修改Config的Formatter,使用JsonMediaTypeFormatter就好了。

  3. 你想问Post怎么调用?

    当然也可以直接从Form中取值。例如:$("#SearchForm").serialize(),

  4. 能查询当然也能够进行增删改喽。
  5. WebApi只有路由等基本框架,数据库操作完全可以自行选择,ADO.net, EF,nhibernate都可以。
  6. 果然是手机APP数据接口快速开发利器啊。

使用Asp.net WebAPI 快速构建后台数据接口的更多相关文章

  1. [外包]!采用asp.net core 快速构建小型创业公司后台管理系统(六.结语)

    到这里就结束了,真的结束了,源码会在文末分享! 另外录了两个视频,对这个系统进行了演示! 做有意义的事情,原此生无悔! 视频地址:使用asp.net core 快速构建权限管理模块1 使用asp.ne ...

  2. 【第二篇】ASP.NET MVC快速入门之数据注解(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  3. Mock模拟后台数据接口--再也不用等后端的API啦

    ok,在开发中经常需要从后台获取数据,那么有时候后台的数据接口并没有写好,所以这时候,就需要自己模拟数据接口,来实现前端逻辑, 今天数的就是阿里巴巴的一款mock产品,很好用的哦!!!! ok!这是我 ...

  4. 如何让Asp.net webAPI返回JSON格式数据

    ASP.NET Web API 是新一代的 HTTP 網路服務開發框架,除了可以透過 Visual Studio 2012 快速開發外 (內建於 ASP.NET MVC 4 的 Web API 專案範 ...

  5. 快速构建大数据存储分析平台-ELK平台安装

    一.概述 ELK是由Elastic公司开发的Elasticsearch.Logstash.Kibana三款开源软件的缩写(但不限于这三款软件). 为什么使用ELK? 在目前流行的微服务架构中,一个大型 ...

  6. DataTables学习:从最基本的入门静态页面,使用ajax调用Json本地数据源实现前端开发深入学习,根据后台数据接口替换掉本地的json本地数据,以及报错的处理地方,8个例子(显示行附加信息,回调使用api,动态显示和隐藏列...),详细教程

    一.DataTables  个人觉得学习一门新的插件或者技术时候,官方文档是最根本的,入门最快的地方,但是有时候看完官方文档,一步步的动手写例子,总会出现各种莫名其妙的错误,需要我们很好的进行研究出错 ...

  7. Android后台数据接口交互实现注册功能

    首先,在ecplise里面新建一个叫做TestServices的web工程.在WebContent--WEB-INF--libs文件夹下导入两个jar包:mysql-connector-java-6. ...

  8. EF快速开发定义数据接口类(转)

    using System; using System.Linq; using System.Linq.Expressions; using System.Data.Objects; namespace ...

  9. vue -webpack.dev.config.js模拟后台数据接口

    在const portfinder = require('portfinder')后面添加 const express = require('express') const app = express ...

随机推荐

  1. 王爽<汇编语言>实验十

    实验十 3.数值显示(以下程序附带测试程序) ;名称: dtoc ;功能: 将dword型数据转变为表示十进制数的字符串,字符串以0为结尾 ;参数: (ax)=dword型数据低字 ; (dx)=dw ...

  2. javaIO-学习笔记

    package IOTest; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream ...

  3. PHP中的运算符---位运算符、递增递减运算符、三元运算符、字符串运算符、数组运算符、类型运算符、错误控制运算符

    1.位运算符 位运算符用来对整型数的指定位进行置位,如果被操作数是字符串,则对该字符串的ASCII码值进行操作. 运算类型 运算符 举例 结果 按位与 & $a & $b 将$a 与 ...

  4. 简述 C、C++程序编译的内存分配情况【转】

    面试题 9:简述 C.C++程序编译的内存分配情况  C.C++中内存分配方式可以分为三种:  (1)从静态存储区域分配:  内存在程序编译时就已经分配好,这块内存在程序的整个运行期间都存在.速度快. ...

  5. 从Eclipse转移到IntelliJ IDEA一点心得

    http://www.ituring.com.cn/article/37792 本人使用IntelliJ IDEA其实并不太久,用了这段时间以后,觉得的确很是好用.刚刚从Eclipse转过来的很多人开 ...

  6. zabbix问题处理

    工作的时候回遇到各种各样的问题. 今天遇到一个关于zabbix的问题. "Zabbix agent on host.name is unreachable for 5 minutes&quo ...

  7. U盘装系统

    http://jingyan.baidu.com/article/fec4bce20e344cf2618d8b37.html

  8. .NET(C#)中的DataSet、string、DataTable等对象转换成Json

    ConvertJson.cs类 using System; using System.Collections.Generic; using System.Text; using System.Data ...

  9. bzoj1553: XOR网络

    Description   计算给定范围内有多少种输入可以使输出为1. 我们假设3 < n < 100, 3 < m < 3000,而且网络中的门是用1到m之间的数任意编号的. ...

  10. C# dataTable 排序

    DataView dv = ds.DefaultView; dv.Sort = "header asc"; ds = dv.ToTable(); C# dataTable 排序