ASP.NET Aries 高級開發教程:如何寫WebAPI接口

前提:

最近,有很多同窗又問到,Aries裏如何提供WebAPI接口?html

針對這個問題,今天給順路寫個教程,其實呢,很簡單的。web

方式一:直接用WebService提供接口。

用這種方式,直接添加接口就能夠了,Aries只是默認處理了.html後綴的請求。對於WS的asmx後綴是沒有影響的,因此傳統怎麼添加就怎麼添加。api

 

方式二:單獨用Taurus.MVC寫一個接口項目。

用這種方式,就是把接口獨立成一個項目,而後經過IIS部署成子應用程序就能夠了。spa

只是部署成子應用程序的時候,須要注意一會兒目錄和根目錄的web.config,出現重複的只能留根目錄的那個。code

(通常都會建議用戶用這種方式,好處是能夠在IIS裏學會一下怎麼部署子應用程序。)htm

方式三:在Aries引入Taurus.MVC便可。

這個方式,其實也很簡單,下面介紹一下簡單的部署:blog

一、引用Taurus.MVC用於寫WebAPI:

在Web.UI項目添加引用Taurus.Core.dll(能夠在Nuget上引用,也能夠引用源碼項目再引用項目)繼承

二、配置Taurus.MVC的兩個必備項:

A、在HttpModule中添加URL攔截。教程

//這是原來有的: 
<add name="Aries.Core" type="Aries.Core.UrlRewrite,Aries.Core" />
//這是新添加的:
 <add name="Taurus.Core" type="Taurus.Core.UrlRewrite,Taurus.Core"/>

B、在AppSetting中設置路徑模式:接口

<!--配置模式【值爲0,1或2】[默認爲1]
      值爲0:匹配{Action}/{Para}
      值爲1:匹配{Controller}/{Action}/{Para}
      值爲2:匹配{Module}/{Controller}/{Action}/{Para}-->
    <add key="Taurus.RouteMode" value="1"/>

C、在AppSetting中設置接口代碼所在的項目:

<!--指定控制器所在的項目(Dll)名稱(可改,項目編繹的dll叫什麼名就寫什麼)
    <add key="Taurus.Controllers" value="Taurus.Controllers"/>-->

 

若是是用Nuget上引用的,默認都會有上面的兩個,其它默認生的,能夠註釋掉。

三、開始寫應用接口代碼:

接口代碼寫在哪裏呢?放在哪一個項目均可以,只要上面C點的配置指向就能夠了,若是接口代碼分散在多個項目中,配置的value能夠用「逗號」分隔。

按Taurus.MVC的方式寫接口,繼承自Taurus.Core.Controller便可:

如:

  /// <summary>
    /// API 接口
    /// </summary>
    public  class APIController : Taurus.Core.Controller
    {
        public void Hello()
        {
            Write("hello Controllers.API");
        }
    }

接口訪問:http://.../api/hello

總結說明:

Aries中默認處理的是.html後綴。

Taurus默認處理的是無後綴。

因此二者並沒有衝突,直接引用,加配置就能夠了,沒你想的複雜。

相關文章
相關標籤/搜索