2011-06-22 67 views
3

首次嘗試在MVC。試圖返回一個JsonResult。我有這個在我的控制器:返回JsonResult是給服務器500錯誤?

[AcceptVerbs(HttpVerbs.Get)] 
public JsonResult GetHistoricalReports() 
{ 
    JsonResult result = Json("test"); 
    //JsonResult result = Json(DashboardSessionRepository.Instance.HistoricalReports); 

    return result; 
} 

在我看來:

function OnHistoricalListBoxLoad(historicalListBox) { 
    $.getJSON('GetHistoricalReports', function (data) { 
     alert(data); 
    } 

我有一個突破點設置GetHistoricalReports內,它的確是被擊中。然而,OnHistoricalListBoxLoad中的警報從不顯示。

回答

6

您需要返回你的結果,如:

return Json("test", JsonRequestBehavior.AllowGet) 
+0

謝謝。你知道一個有很好解釋的網站嗎?我爲Json,JsonResult,Json Example等做了一些搜索,但所有的例子似乎都是javascript方面的。 –

+0

我認爲這是爲了阻止來自您網站外部的請求調用此操作。查看哈克http://haacked.com/archive/2009/06/25/json-hijacking.aspx –

+0

是不是[HttpPost]和[HttpGet]要麼禁止或允許GET的任務? –

相關問題