MVC4中視圖獲取控制器中返回的json格式數據


再開發MVC項目時,有時只需要從控制器中返回一個處理的結果,這時返回Json格式的數據非常的方便,在Controller中,提供了幾種返回類型和方法,如:

Content()

返回文本類型的ContentResult:,比如“Hello,World!”;

File()

返回文件類型的內容FileResult,比如PDF

HttpNotFound()

返回包含404HTTP狀態碼的HttpNotFoundResult.

JavaScript()::返回JavaSciptResult

返回包含JavaScript內容的JavaScriptResult,比如:“function hello(){alert("Hello world!")}”

Json()

返回JSON格式數據的JsonResult,比如:“{"Message":"Hello world!"}”.我們這邊就是要用該方法返回到視圖一個json對象

PartialView()

返回包含部分視圖內容的PartialViewResult,(例如,視圖可不包含結局)。

Redirect()

返回一個包含302跳轉狀態值RedirectResult,跳轉到給定的URL上。例如,“302 http://www.yh117.com/auctions/recent”.這個方法包含一個同級別的放啊RedirectPermanent(),它同樣返回RedirectResult,但是使用的是301狀態碼去只是一個永久的跳轉地址,而不是臨時地址。

RedirectToAction()和RedirectToRoute()

與Redirect()類似,只有框架可以動態查詢路由引擎來確定外部的URL.與Redirect()一樣,他們同樣包含永久跳轉方法:RedirectToActionermanent()和RedirectToRoutePermanent()

View()

返回渲染視圖的ViewResult()

綜上所述:MVC框架提供了各種情況下需要的操作結果類型,我們可以自由決定使用哪種類型。

下面是我寫的一個例子,返回JSon格式的

視圖中的代碼:

<script>
        function GetJosn()
        {
            alert(1);
            $.get("/Home/BookInfo", {id:"1"}, function (data) {
                alert(data.Result);
            },"json");
        }
    </script>

用的是Get方法獲取的,這里需要注意的是“json”必須要用引號的,這是jquery語法

 Controller中的中的代碼是:

public JsonResult BookInfo(string id) {
            ResultJsonInfo resultInfo = new ResultJsonInfo();
            resultInfo.Result = true;
            resultInfo.Msg = "好啊";
            return Json(resultInfo,JsonRequestBehavior.AllowGet);
        }

這里用了一個ResultJsonInfo類的對象,包含返回結果和Message,然后利用JSON()方法返回該對象就行,不需要將該對象轉成json格式,同事注意用GET方法獲取時,在JSON()方法中一定要指定可以用Get獲取,否則會獲取不到。


免責聲明!

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



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