最近,有很多同窗又問到,Aries裏如何提供WebAPI接口?html
針對這個問題,今天給順路寫個教程,其實呢,很簡單的。web
用這種方式,直接添加接口就能夠了,Aries只是默認處理了.html後綴的請求。對於WS的asmx後綴是沒有影響的,因此傳統怎麼添加就怎麼添加。api
用這種方式,就是把接口獨立成一個項目,而後經過IIS部署成子應用程序就能夠了。spa
只是部署成子應用程序的時候,須要注意一會兒目錄和根目錄的web.config,出現重複的只能留根目錄的那個。code
(通常都會建議用戶用這種方式,好處是能夠在IIS裏學會一下怎麼部署子應用程序。)htm
這個方式,其實也很簡單,下面介紹一下簡單的部署:blog
在Web.UI項目添加引用Taurus.Core.dll(能夠在Nuget上引用,也能夠引用源碼項目再引用項目)繼承
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默認處理的是無後綴。
因此二者並沒有衝突,直接引用,加配置就能夠了,沒你想的複雜。