ASP.NET MVC的Web Api的實練


學習ASP.NET MVC一年多來,現在該學學Web Api了。API與ASP.NET MVC的Controller差不多。前者只是返回數據序列化和發送給客戶端; 后者返回View或Render View。

 
當你在專案中創建第一個Web Api時,它會自動產生一個文檔和修改了web.config。如我們先在專案下添加一個Apis目錄,是用來存放api控制器的。
創建完成之后,它會顯示一個txt文檔:



這個readme.txt是告訴你需要修改Globel.asax文檔,步驟為1,2,3:

 

其實它還自動產生下面這個文檔,WebApiConfig.cs並放在App_Start目錄之下。



另外你會發現web.config還被修改,它自動添加了一段:



下面Insus.NET創建一個model:



創建一個Entity,實體即是數據集散地,數據源於文檔,數據庫,xml等:


接下來,我們可以完善Api了,它有繼承ApiController類。


 現在我們測試一下,寫好的Web Api是否能正常運行,在瀏覽器的地址欄上輸入:

 
404錯誤,是什么情況? 經查閱資料,原來Global.asax配置有問題。因為創建第一個api時,它自動產生的WebApiConfig.cs,然后需要手動注冊於Application_Start()方法內。
但是
RouteConfig.RegisterRoutes(RouteTable.Routes);

GlobalConfiguration.Configure(WebApiConfig.Register);
是有序次關系的。也就是說,asp.net mvc是先執行GlobalConfiguration.Configure(WebApiConfig.Register)之后,再執行RouteConfig.RegisterRoutes(RouteTable.Routes)。我們在手動注冊時,就需要注意到這點。它們正確的配置如下:


如果能正常訪問,它應該會顯示下載狀態:


一切准備就緒,我們創建一個.html網頁,使用javascript或理jQuery去讀取api的數據。
在專案中,新一個Orders目錄,是用來存放一切與order相關.html文件。

 

還有jQuery代碼沒寫呢,沒有什么問題,相信不是很難,因為以前有練習無數次了:

 

演示:


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM