ASP.NET MVC WEBAPI第一次接触

asp.net 的MVC4 WEBAPI的出现已经有段时间了。最近因为做自己的一些小玩儿,要做一个API,正好可以学习一下这个WEBAPI。

WEBAPI项目的创建我就不啰嗦,先来看看webapi的路由配置吧

config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
               defaults: new { id = RouteParameter.Optional }
            );

直接api跟控制器Controller的名字就可以了,这会让人疑惑这样的配置怎么才能访问到controller里的方法呢?我们都知道controller里的方法上可以加httpget或httppost这样的。所以我们得在方法上加上这些HttpMethod。

下面看看controller与url的映射关系

URL controller的action httpmethod
/api/controllername/id getuser(int id) httpget
/api/controllername/?name=xx getuser(string name) httpget
/api/controllername/ adduser(usermodel user) httppost
/api/controllername/id deleteuser(int id) httpdelete
/api/controllername/ deleteall() httpdelete
/api/controllername/ putuser() httpput

注意:getuser(int id)这个方法的id不能改,改了之后就访问不到这个方法了。像这样的API配置是简单了,但是这要我们在controller里的每个方法加上httpmethod说明而且一个controller里的方法写不了多少个。不过不用担心,我们可以自己定义我们的路由配置,如下

config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{action}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );

这样配置我们就可以灵活的使用了。

以上是我个人学习的一些初浅的认识,欢迎大家指出我的不足。

时间: 2024-10-13 12:35:08

ASP.NET MVC WEBAPI第一次接触的相关文章

让Asp.net mvc WebAPI 支持OData协议进行分页查询操作

这是我在用Asp.net mvc WebAPI 支持 OData协议 做分页查询服务时的 个人拙笔. 代码已经开发到oschina上.有兴趣的朋友可以看看,欢迎大家指出不足之处. 看过了园子里的几篇关于ASP.NET MVC WebAPI 支持OData协议的文章,很受启发. 但是对于OData协议下对数据的分页查询,确实没有找到让我满意的东西,可能是个人就这脾气.不喜欢复杂. 对于在 WebAPI 支持OData协议,好处不多讲了,反正,我个人是非常乐意用它来做服务接口之类的. 这篇笔记的主题

.net异步性能测试(包括ASP.NET MVC WebAPI异步方法)

很久没有写博客了,今年做的产品公司这两天刚刚开了发布会,稍微清闲下来,想想我们做的产品还有没有性能优化空间,于是想到了.Net的异步可以优化性能,但到底能够提升多大的比例呢?恰好有一个朋友正在做各种语言的异步性能测试(有关异步和同步的问题,请参考客<AIO与BIO接口性能对比>),于是我今天写了一个C#的测试程序. 首先,建一个 ASP.NET MVC WebAPI项目,在默认的控制器 values里面,增加两个方法: // GET api/values?sleepTime=10 [HttpG

我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第二篇)

在阅读这篇文章的时候,我想你已经看完第一篇文章啦·也有可能跟我一样,现在正在使用它Asp.net WebAPI为我们干活儿.可能是服务分页查询接口,也可能是其它操作,遇到了一些小问题.有问题,那咱就来解决问题吧!(码农万岁,万岁,万万岁!) 扯两句,Asp.net MVC WebAPI,是建立在Asp.net MVC基础上的.所有的请求处理,都遵循MVC的路由规则,对于请求的拦截与处理,都可以通过自定义继承自 System.Web.Http.Filters.ActionFilterAttribu

案例:1 Ionic Framework+AngularJS+ASP.NET MVC WebApi Jsonp 移动开发

落叶的庭院扫的一干二净之后,还要轻轻把树摇一下,抖落几片叶子,这才是Wabi Sabi的境界. 介绍:Ionic是移动框架,angularjs这就不用说了,ASP.Net MVC WebApi提供数据源,开放数据接口 快乐学习 Ionic Framework+PhoneGap 手册1-1{创建APP项目}{点击查看} 快乐学习 Ionic Framework+PhoneGap 手册1-2{介绍Header,Content,Footer的使用}{点击查看} 快乐学习 Ionic Framework

ASP.NET MVC WebAPI 资源整理

注:这是收集给公司同事学习的资料,入门级别的. 使用ASP.Net WebAPI构建REST服务(一)——简单的示例 http://blog.csdn.net/mengzhengjie/article/details/52397112 说明:有关WebAPI入门的文章,这是一个系列,对于了解WebAPI其它方面很有帮助. ASP.NET MVC学习之路由篇(1) http://www.cnblogs.com/yaozhenfa/p/asp_net_mvc_route_1.html 说明:有关 M

我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第三篇)

第三篇笔记,这是自己 Asp.net MVC OData协议 分页解决方案的 最后一记啦.OK,let's go ! 第一件事儿! 第一件事儿,就是下载这个组件了,你可以通过下面提供的附件下载,当然也可以下载源码自己编译一个. 怎么使用它? 在你返回分页数据的Action上加(ODPageResultAttribute)就可以支持返回分页数据了,分页数据返回的格式为json,包含字段如第一篇笔记中提到的分页数据返回对象一致.具体的请参考项目源代码(ODataPQ.Tests\Controller

OData 协议 asp.net Mvc WebAPI分页笔记

// 针对 OData协议的Mvc WebAPI 2.2 分页插件     ; (function ($, window) {         var tbPQ = function () {         };         // get the length from 'urlAndParamter'         function getCount(urlAndParamter, ok_handler) {             $.ajax(urlAndParamter, {  

【转】asp.net mvc webapi+angular.js案例

参考地址:http://www.mamicode.com/info-detail-892383.html 大家好,本文用一个简单的demo演示AngularJS在MVC中的使用,在学习这个demo之前,需要你对angularJS有基本的了解,并且对asp.net webAPI也了解一些,我最近也是因为公司项目需要,才开始学习这两种新的知识(对我而言). 网上对于angularJS和MVC结合的资料很少,所以在学习过程中走了很多弯路,在刚刚搞明白的时候,赶紧写下一篇笔记,方便以后查阅,也可以发出来

我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第一篇)

OData协议.多么牛B的技术. 传统的分页写习惯了,最近项目中,用到了 Asp.net WebAPI 2.0来做数据交互接口.至于为什么要使用WebAPI,我想只要是对OData协议有了解的朋友.只要说到WebAPI都会想到这个,如果你想对它有更多的深入了解.可以移步博客园(张善友大师)的介绍. URL(http://www.cnblogs.com/shanyou/archive/2010/03/26/1697316.html) 微软 5.5.2.0 的 System.Web.OData.dl