天下之事,必先处之难,而后易之。
君临
知我者谓我心忧,不知我者谓我何求

原文地址:https://blog.csdn.net/laymat/article/details/65444701

我们在创建 web mvc项目时是不支持web api的接口方式访问的,所以我们需要添加额外的组件来支持实现双模式。

首先我们需要准备三个web api依赖的组件(目前在.net 4/4.5版本下面测试正常,2.0暂未进行测试,需要自行测试)

1、Microsoft.AspNet.WebApi.Client.5.2.2

2、Microsoft.AspNet.WebApi.Core.5.2.2

3、Microsoft.AspNet.WebApi.WebHost.5.2.2

web api依赖组件下载地址 https://pan.baidu.com/s/1slJHdVJ

下载依赖组件后解压至packages目录或其他目录即可,解压完毕后打开编辑器 > 添加引用 > 找到下载的三个依赖dll并引用(其中Microsoft.AspNet.WebApi.Client.5.2.2为System.Net.Http的扩展包,故引用只有两个):

(如果原来已经引用了System.Web.Http则需要删除原来的引用后重新引用

添加完引用后,我们需要在App_Start目录添加一个WebApiConfig的配置文件,用于初始化api访问路由,代码如下:

 

[csharp] view plain copy
  1.     public static class WebApiConfig  
  2.     {  
  3.         public static void Register(HttpConfiguration config)  
  4.         {  
  5.             // Web API 路由  
  6.             config.MapHttpAttributeRoutes();  
  7.   
  8.   
  9.             config.Routes.MapHttpRoute(  
  10.                 name: "DefaultApi",  
  11.                 routeTemplate: "api/{controller}/{id}",  
  12.                 defaults: new { id = RouteParameter.Optional }  
  13.             );  
  14.         }  
  15.     }  


添加完该配置文件后,我们接下来就需要在Global.asax全局文件中注册该配置文件:

 

[csharp] view plain copy
  1.         protected void Application_Start()  
  2.         {  
  3.             AreaRegistration.RegisterAllAreas();  
  4.             GlobalConfiguration.Configure(WebApiConfig.Register);  
  5.             FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);  
  6.             RouteConfig.RegisterRoutes(RouteTable.Routes);  
  7.         }  


(注意:GlobalConfiguration.Configure(WebApiConfig.Register);注册信息必须位于普通RouteConfig之前,不然无法生效。)

完成以上配置操作后,我们就对webapi的基本运行环境配置完毕了,接下来我们添加一个web api controller:

 

[csharp] view plain copy
  1.     [RoutePrefix("api/Notify")]  
  2.     public class NotifyController : ApiController  
  3.     {  
  4.         [Route("Alipay")]  
  5.         public string Alipay()  
  6.         {  
  7.             return "success";  
  8.         }  
  9.     }<span style="white-space:pre;">  </span>  

    [RoutePrefix("api/Notify")] 配置api访问路径 示例:http://domain/api/Notify

    [Route("Alipay")] 配置api访问接口  示例:http://domain/api/Notify/Alipay

 

如果需要对某个方法设置访问模式,则可以添加上[HttpPost]或[HttpGet]位于[Route]上方。

posted on 2018-05-09 18:15  boonya  阅读(2239)  评论(0编辑  收藏  举报

我有佳人隔窗而居,今有伊人明月之畔。
轻歌柔情冰壶之浣,涓涓清流梦入云端。
美人如娇温雅悠婉,目遇赏阅适而自欣。
百草层叠疏而有致,此情此思怀彼佳人。
念所思之唯心叩之,踽踽彳亍寤寐思之。
行云如风逝而复归,佳人一去莫知可回?
深闺冷瘦独自徘徊,处处明灯影还如只。
推窗见月疑是归人,阑珊灯火托手思忖。
庐居闲客而好品茗,斟茶徐徐漫漫生烟。

我有佳人在水之畔,瓮载渔舟浣纱归还。
明月相照月色还低,浅近芦苇深深如钿。
庐山秋月如美人衣,画堂春阁香气靡靡。
秋意幽笃残粉摇曳,轻轻如诉画中蝴蝶。
泾水潺潺取尔浇园,暮色黄昏如沐佳人。
青丝撩弄长裙翩翩,彩蝶飞舞执子手腕。
香带丝缕缓缓在肩,柔美体肤寸寸爱怜。
如水之殇美玉成欢,我有佳人清新如兰。
伊人在水我在一边,远远相望不可亵玩。