zoukankan      html  css  js  c++  java
  • 简单的ASP.NET Web API代码示例

    前言:

    一个简单的Web API实例,通过自己编写Web API的代码来可以更好的感悟Web API的运行机制,废话不多说,直接上代码,希望同为初学者的同学能够跟着敲一遍,所有代码通过调试,可自行在原有基础上进行修改和扩展,有任何疑问还请不吝赐教。

    正文:

    1、首先创建一个空的Web项目,注意是Empty,而非Web API

     

    注意:

    这里一定要引入如下DLL:

    Json.NET

    System.NET.Http 

    System.Web.Http

    System.Web.Http.WebHost

     

    1.1. 大体的目录是这样的,没有明确规定,读者可自行拟定目录

     

    2、首先创建一个WebApiConfig的配置文件,这里名称可自行拟定,主要用来定义Web API的路由

     

     详细代码如下:

     1 namespace Ryan4_WebAPI_Application_01
     2 
     3 {
     4 
     5     public class WebApiConcifg
     6 
     7     {
     8 
     9         public static void Register(HttpConfiguration config)
    10 
    11         {
    12 
    13             config.Routes.MapHttpRoute(
    14 
    15                 name: "DefaultApi",
    16 
    17                 routeTemplate: "api/{controller}/{action}/{id}",
    18 
    19                 defaults: new { id = RouteParameter.Optional }
    20 
    21                 );
    22 
    23         }
    24 
    25     }
    26 
    27 }

     

    接下来必须要创建一个asax文件,来注册这个定义的API Route

    在Application_Start中加入如下代码,有了这句后方能在程序运行后使用Web API方式定位你的控制器和方法

     1         protected void Application_Start(object sender, EventArgs e)
     2         {
     3             Web_API_Config.Register(GlobalConfiguration.Configuration);
     4         }
     5 
     6         protected void Session_Start(object sender, EventArgs e)
     7         {
     8 
     9         }
    10 
    11         protected void Application_BeginRequest(object sender, EventArgs e)
    12         {
    13 
    14         }
    15 
    16         protected void Application_AuthenticateRequest(object sender, EventArgs e)
    17         {
    18 
    19         }
    20 
    21         protected void Application_Error(object sender, EventArgs e)
    22         {
    23 
    24         }
    25 
    26         protected void Session_End(object sender, EventArgs e)
    27         {
    28 
    29         }
    30 
    31         protected void Application_End(object sender, EventArgs e)
    32         {
    33 
    34         }
    35     }

     3、创建数据实体Users.cs

     

     详细代码如下:

     1 namespace Ryan4_WebAPI_Application_01.Model.Entities
     2 
     3 {
     4 
     5     public class Users
     6 
     7     {
     8 
     9         public int Id { get; set; }
    10 
    11         public string UName { get; set; }
    12 
    13         public string UPass { get; set; }
    14 
    15         public int UAge { get; set; }
    16 
    17         public string UAddress { get; set; }
    18 
    19     }
    20 
    21 }

     

    4、创建控制器:UserController.cs

     

     

     1 namespace Ryan4_WebAPI_Application_01.Controller
     2 
     3 {
     4 
     5     public class UserController : ApiController
     6 
     7     {
     8 
     9         public List<Users> GetUser()
    10 
    11         {
    12 
    13             var userList = new List<Users>
    14 
    15             {
    16 
    17                 new Users { Id = 1, UName = "Ryan Chow", UPass = "123456", UAge = 27, UAddress = "Earth"},
    18 
    19                 new Users { Id = 2, UName = "Ryan Chow", UPass = "123456", UAge = 27, UAddress = "Earth"},
    20 
    21                 new Users { Id = 3, UName = "Ryan Chow", UPass = "123456", UAge = 27, UAddress = "Earth"},
    22 
    23                 new Users { Id = 4, UName = "Ryan Chow", UPass = "123456", UAge = 27, UAddress = "Earth"},
    24 
    25                 new Users { Id = 5, UName = "Ryan Chow", UPass = "123456", UAge = 27, UAddress = "Earth"},
    26 
    27                 new Users { Id = 6, UName = "Ryan Chow", UPass = "123456", UAge = 27, UAddress = "Earth"},
    28 
    29                 new Users { Id = 7, UName = "Ryan Chow", UPass = "123456", UAge = 27, UAddress = "Earth"},
    30 
    31                 new Users { Id = 8, UName = "Ryan Chow", UPass = "123456", UAge = 27, UAddress = "Earth"},
    32 
    33                 new Users { Id = 9, UName = "Ryan Chow", UPass = "123456", UAge = 27, UAddress = "Earth"},
    34 
    35             };
    36 
    37  
    38 
    39             var temp = (from u in userList select u).ToList();
    40 
    41             return temp;
    42 
    43         }
    44 
    45     }
    46 
    47 }

     

    5、最后F5调试项目,输入localhost:5381/api/user/getuser

  • 相关阅读:
    Ubuntu Linux Matlab 安装 中文乱码 桌面启动器 Could not find the main class: java/splash.png. 终端terminal 直接运行 matlab
    Ubuntu Linux 官网 u盘安装 u盘系统 图文教程
    从google map google earth获得大图 方法总结
    论文查重网址
    [ZZ] Computer Science Conference Rankings
    Ubuntu linux 信使 iptux Window 飞鸽 ipmsg 飞秋 feiq 文件传输
    Ubuntu Linux Matlab mex
    Ubuntu Dell OptiPlex 990 Intel Gigabit CT Desktop Adapter网卡驱动安装
    C++的File类文件操作
    GIS软件比较
  • 原文地址:https://www.cnblogs.com/zhoulingxiang/p/6510686.html
Copyright © 2011-2022 走看看