不使用jQuery对Web API接口POST,PUT,DELETE数据
前些天,Insus.NET有演示W(wǎng)eb API接口的操作:
《怎樣操作WebAPI接口(顯示數(shù)據(jù))》http://www.cnblogs.com/insus/p/5670401.html
《ASP.NET MVC對WebAPI接口操作(添加,更新和刪除)》http://www.cnblogs.com/insus/p/5673641.html
但是,有網(wǎng)友說,不想使用jQuery,全部以ASP.NET MVC來實現(xiàn)。Ok,那來看看,先來實現(xiàn)POST的功能,即是往Web API添加數(shù)據(jù)。
在控制器中,創(chuàng)建兩個Action,即是視圖Action,另一個是POST的Action:
?
視圖代碼:
?
程序運行,看看是否能正常運行,數(shù)據(jù)庫是否有數(shù)據(jù)插入?
?
下面演示更新操作PUT,在控制器中,創(chuàng)建Action,一個顯示數(shù)據(jù),另一個更新數(shù)據(jù):
視圖:
?
實時演示:
?下面Insus.NET再把Delete的功能實現(xiàn)完,在實現(xiàn)刪除這個功能時,出現(xiàn)一點點困難:
先在控制器創(chuàng)建操作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?
看到否,在上圖中的標(biāo)記#2中,DeleteAsync方法,它是不接受一個復(fù)雜Complex對type。為了不需要對前些天的程序作過多的修改,因此Insus.NET只得對Web API進行修改。這也許是設(shè)計Web API時欠缺的思考。
為API接口添加多一個方法重載:
這個Web API來自《創(chuàng)建與使用Web API》http://www.cnblogs.com/insus/p/5019088.html
?
添加刪除視圖DeleteDemo.cshtml:
?
刪除功能實時演示:
總結(jié)
以上是生活随笔為你收集整理的不使用jQuery对Web API接口POST,PUT,DELETE数据的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: *.zip、*.tar、*.tar.gz
- 下一篇: 以用户体验为导向的设计表现