现在的互联网应用,无论是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. 11.12模拟考T2(GCD)

    2.梅花桩   (blossom.pas/c/cpp) [问题描述] 小x在练习一门轻功,这门轻功是在梅花桩上跳来跳去,这门轻功是严格按照直线从一个梅花桩直接跳到另外一个梅花桩上.因为小x有恐高症,所 ...

  2. imooc-java-作业练习-20150918

    小伙伴们,请根据所学知识,编写一个 JAVA 程序,实现输出考试成绩的前三名 要求: 1. 考试成绩已保存在数组 scores 中,数组元素依次为 89 , -23 , 64 , 91 , 119 , ...

  3. DBC表名说明

    http://www.afkwower.com/forum.php?mod=viewthread&tid=1277&extra=page%3D2由天堂大神提供Achievement.d ...

  4. 使用subclass UIActivity的方案来分享图片

    IOS6开始, 系统提供了UIActivityViewController, 对图片,文字,url进行相关的操作. 对于缺乏UI设计师的开发来说, 使用它进行轻量级的分享是很好的选择. 最大的缺点是自 ...

  5. mouseover事件与mouseenter事件的区别

    不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件.对应mouseout 只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件.对应mouseleave 被触发的 M ...

  6. (转) WTF is computer vision?

        WTF is computer vision? Posted Nov 13, 2016 by Devin Coldewey, Contributor   Next Story   Someon ...

  7. Python底层socket库

    Python底层socket库将Unix关于网络通信的系统调用对象化处理,是底层函数的高级封装,socket()函数返回一个套接字,它的方法实现了各种套接字系统调用.read与write与Python ...

  8. 前端JavaScript规范

    前端JavaScript规范 http://www.imooc.com/article/1402 http://greengerong.com/blog/2015/05/09/qian-duan-ja ...

  9. webpack的几个使用方法

    1.gulp.task -> webpack -> webpack.config.js -> bundle.js -> html 2.cmd -> npm run -&g ...

  10. MS SQL执行大脚本文件时,提示“内存不足”的解决办法()

    问题描述: 当客户服务器不允许直接备份时,往往通过导出数据库脚本的方式来部署-还原数据库, 但是当数据库导出脚本很大,用Microsoft SQL Server Management Studio执行 ...