ASP.NET MVC WEBAPI第一次接觸

來源:互聯網
上載者:User

標籤:

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 }            );

這樣配置我們就可以靈活的使用了。

 

以上是我個人學習的一些初淺的認識,歡迎大家指出我的不足。

ASP.NET MVC WEBAPI第一次接觸

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.