WebAPI创建

一、创建Web API

1、Create a New Web API Project
创建新的Web API项目

Start by running Visual Studio 2010 and select New Project from the Start page. Or, from the File menu, select New and then Project.
启动VS 2012,并在“开始页”选择“新项目”。或从“文件”菜单选择“新建”,然后选择“项目”。

在“模板”面板中选择“已安装模板”,并展开“Visual C#”节点。选择该节点下的“Web”。在项目模板列表中选择“ASP.NET MVC 4 Web应用程序”。

WebAPI2-1

在“新的ASP.NET MVC 4项目”对话框中选择“Web API”

WebAPI2-2

 

二、Web API路由与动作

1、路由设置

 

    找到App_Start文件夹下WebApiConfig.cs文件,修改为下面设置

 

[csharp] view plain copy
 
  1. public static void Register(HttpConfiguration config)  
  2.         {  
  3.             config.Routes.MapHttpRoute(  
  4.                 name: "PayOrderSendWifi", //此名称可随意设置,没用到  
  5.                 routeTemplate: "api/{controller}/{id}",  
  6.   
  7.               defaults: new  
  8.               {  
  9.                   id = RouteParameter.Optional,  
  10.               }  
  11.             );  
  12.             //直接xml文件排除  
  13.             config.Formatters.Remove(config.Formatters.XmlFormatter);  
  14.   
  15.   
  16.         }  

 

 

三、创建Web API方法

1、新建一个控制器,添加一个POST请求方法

 

 

[csharp] view plain copy
 
  1. [HttpPost]  
  2.         public ResponseSignDTO UpdateUseTimeBySign(RequestWiFiDTO reqDTO)  
  3.         {  
  4.             ResponseSignDTO dto = new ResponseSignDTO();  
  5.               
  6.                 try  
  7.                 {  
  8.                    //要执行的方法..................  
  9.                 }  
  10.                 catch (Exception ex)  
  11.                 {  
  12.                 }  
  13.              
  14.             return dto;  
  15.         }  

 

 

1、添加返回(响应)类

 

 

[csharp] view plain copy
 
  1. /// <summary>  
  2.    /// 响应类  
  3.    /// </summary>  
  4.    public class ResponseSignDTO  
  5.    {  
  6.        /// <summary>  
  7.        /// 错误消息  
  8.        /// </summary>  
  9.        public ErrorMessage ErrorMessage { get; set; }  
  10.   
  11.    }  

 

 

2、添加请求类

 

[csharp] view plain copy
 
  1.  public class RequestWiFiDTO  
  2.     {  
  3.   /// <summary>  
  4.         /// 用户编号  
  5.         /// </summary>  
  6.         public int UserID { get; set; }  
  7.  }  

 

 

3、消息类

 

[csharp] view plain copy
 
  1.  /// <summary>  
  2.     /// 消息类  
  3.     /// </summary>  
  4.     public class ErrorMessage  
  5.     {  
  6.       
  7.         public int ID { get; set; }  
  8.    
  9.         public string Message { get; set; }  
  10.         public static ErrorMessage Succeed()  
  11.         {  
  12.             ErrorMessage dto = new ErrorMessage();  
  13.             dto.ID = 0;  
  14.             dto.Message = "成功";  
  15.             return dto;  
  16.         }  
  17.         public static ErrorMessage Error(string errorMessage)  
  18.         {  
  19.             ErrorMessage dto = new ErrorMessage();  
  20.             dto.ID = 1;  
  21.             dto.Message = errorMessage;  
  22.             return dto;  
  23.         }  
  24. }  
  25.  /// <summary>  
  26.     /// 响应类  
  27.     /// </summary>  
  28.     public class ResponseDTO  
  29.     {  
  30.         /// <summary>  
  31.         /// 错误消息  
  32.         /// </summary>  
  33.         public ErrorMessage ErrorMessage { get; set; }  
  34.     }  

 

2、添加一个Get请求方法

 

 

[csharp] view plain copy
 
  1. [HttpGet]  
  2.        public ResponseDTO PayOrderSendWifiDTO(int UserID,int Days)  
  3.        {  
  4.            ResponseDTO respDTO = new ResponseDTO();  
  5.                try  
  6.                {  
  7.           //要执行的方法..................  
  8.                }  
  9.                catch (Exception ex)  
  10.                {  
  11.                }  
  12.             
  13.            return respDTO;  
  14.        }  

 

 

 

四、调用方式

1、调用POST方法:使用Chrome流量器的PostMan工具。

 

前端模拟发送数据/调试的好工具:Chrome下的Postman-REST Client

 

下载地址 https://chrome.google.com/webstore/search/postman-REST%20Client

 

PostMan设置:

①、Headers

Content-Type   application/json

Accept              textml,application/xml,application/xhtml+xml,textml;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5

 

2、调用Get方法:

http://localhost:3553/PayOrderSendWifi?UserID=8&Days=5

posted @ 2018-04-02 10:55  多加些蜂蜜  阅读(206)  评论(0编辑  收藏  举报