近期學習WebApi,初步感想是用起來很容易上手,概念上也很好理解,唯一不爽的地方就在於如果在Visual Studio環境裡建立Webapi程序,它會自動給創建很多文件夾和文件,其中很多都是用不到的,經過Google和摸索,結合項目的實際需要,將Webapi作為一個單獨的Class library存放,而Host程序分別為Console和IIS,下面做一下記錄。
一、建立類庫項目
1、在Visual Studio開發環境中,點擊菜單 File->New Project->Class Library 新建一個類庫項目, 如圖:
2、安裝 Microsoft.AspNet.WebApi.Core 包及其依賴
在Visual Studio開發環境中,點擊菜單 Tools -> NuGet Package Manager -> Package Manager Console 進入 Nuget包管理器控制台,選擇 Default project 為剛剛建立的類庫項目,這裡是 controller_library
在包管理器控制台中輸入:
Install-Package microsoft.aspnet.webapi.core
如圖:
3、編寫測試Controller
4、安裝 microsoft.aspnet.webapi.owin 包及其依賴
5、編寫Startup
解決方案中,右鍵單擊 controller_library, add -> class , 命名為 Startup.cs
二、建立宿主程序(Host)
1、在解決方案上單擊右鍵,新建控制台項目,命名為WebAPIHost,打開 包管理器控制台,輸入:
install-package microsoft.aspnet.webapi.owin
2、添加引用
3、編寫宿主代碼
4、編譯解決方案,運行宿主程序:
5、測試
三、Host WebAPI 到IIS
1、建立空的Asp.Net 項目,將其命名為 WebAPIHost_IIS
2、右鍵單擊 WebAPIHost_IIS 項目,添加目錄 App_Start 並添加 WebApiConfig類
3、安裝包 Microsoft.AspNet.WebApi.Core 及其依賴
install-package microsoft.aspnet.webapi.core
4、WebApiConfig的實現代碼如下:
5、添加 Global Application Class
右鍵單擊項目,add-> Global Application class,默認名稱即可,這裡是 Global.asax
6、安裝 Microsoft.AspNet.WebApi.WebHost 包及其依賴
install-package Microsoft.AspNet.WebApi.WebHost
7、Global.asax.cs 代碼如下:
8、現在,打開IIS(Internet信息服務管理器),添加網站綁定端口,目錄指向 WebAPIHost_IIS 的項目目錄
9、打開浏覽器測試結果:
本文完。