2013-02-14 44 views
0

下面是我区面对的问题,同时获得JSON的 “500内部服务器错误”

enter image description here

控制器

public JsonResult Get_JSon() 
{ 
    List<AdminModule> mod = new List<AdminModule>(); 
    mod.Add(new AdminModule { MyName = "1" }); 
    mod.Add(new AdminModule { MyName = "2" }); 
    mod.Add(new AdminModule { MyName = "3" }); 

    return Json(mod); 
} 

型号

public class AdminModule 
{ 
    [Required] 
    public String MyName { get; set; } 
} 

个查看

@model _1.Areas.Admin.Models.AdminModule 
@{ 
    ViewBag.Title = "Index"; 
    Layout = "~/Areas/Admin/Views/Shared/_LayoutPage1.cshtml"; 
} 
<div id="formContainer_Json" style="display:none" 
     data-url="@Url.Action("Get_JSon", "Admin", new { area = "Admin" })"> 
</div> 
<input id="BTN_Json" onclick="return GetJsonR()" type="button" value="Button" /> 
@section Scripts { 
    <script type="text/javascript" 
      src="@Url.Content("~/areas/admin/scripts/myscript.js")"></script> 
} 

脚本

function GetJsonR() { 
    var $formContainer = $('#formContainer_Json'); 
    var url = $formContainer.attr('data-url'); 
    $.get(url, null, function (data) { return false; }); 
    return false; 
} 

困惑是 - 当提交按钮来获得JSON结果

而且在标题是下面显示内部服务器错误信息...

<title>This request has been blocked because sensitive information could be 
disclosed to third party web sites when this is used in a GET request. To 
allow GET requests, set JsonRequestBehavior to AllowGet.</title> 

回答

2

替换以下行...

return Json(mod); 

下面...

return Json(mod, JsonRequestBehavior.AllowGet);