不使用jQuery对Web API接口POST,PUT,DELETE数据
前些天,Insus.NET有演示Web API接口的操作:
《怎樣操作WebAPI接口(顯示數據)》http://www.cnblogs.com/insus/p/5670401.html
《ASP.NET MVC對WebAPI接口操作(添加,更新和刪除)》http://www.cnblogs.com/insus/p/5673641.html
但是,有網友說,不想使用jQuery,全部以ASP.NET MVC來實現。Ok,那來看看,先來實現POST的功能,即是往Web API添加數據。
在控制器中,創建兩個Action,即是視圖Action,另一個是POST的Action:
?
視圖代碼:
?
程序運行,看看是否能正常運行,數據庫是否有數據插入?
?
下面演示更新操作PUT,在控制器中,創建Action,一個顯示數據,另一個更新數據:
視圖:
?
實時演示:
?下面Insus.NET再把Delete的功能實現完,在實現刪除這個功能時,出現一點點困難:
先在控制器創建操作Action:
?
public ActionResult DeleteDemo(int id){var sizes = ApiUtility.Get<Size>("http://localhost:9001/api/size/" + id);var model = sizes.FirstOrDefault();return View(model);}[HttpPost]public ActionResult DeleteDemo(Size size){HttpClient client = new HttpClient();client.DeleteAsync("http://localhost:9001/api/size/" + size.Size_nbr).ContinueWith((postTask) =>{postTask.Result.EnsureSuccessStatusCode();});return RedirectToAction("ShowApiData1");} Source Code?
看到否,在上圖中的標記#2中,DeleteAsync方法,它是不接受一個復雜Complex對type。為了不需要對前些天的程序作過多的修改,因此Insus.NET只得對Web API進行修改。這也許是設計Web API時欠缺的思考。
為API接口添加多一個方法重載:
這個Web API來自《創建與使用Web API》http://www.cnblogs.com/insus/p/5019088.html
?
添加刪除視圖DeleteDemo.cshtml:
?
刪除功能實時演示:
總結
以上是生活随笔為你收集整理的不使用jQuery对Web API接口POST,PUT,DELETE数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: *.zip、*.tar、*.tar.gz
- 下一篇: 以用户体验为导向的设计表现