ASP.NET MVC Ajax调用不从控制器返回Json数据

ASP.NET MVC Ajax调用不从控制器返回Json数据,json,ajax,asp.net-mvc,Json,Ajax,Asp.net Mvc,我正在开发一个ASP.NET MVC应用程序,我想通过Ajax调用一个控制器方法,并让它以Json格式从控制器返回一个数组 控制器: public class HomeController: Controller { public JsonResult GetArray() { // Code for getting array here // Convert array to JSON data return Json(new { Items = ArrayName.ToLi

我正在开发一个ASP.NET MVC应用程序,我想通过Ajax调用一个控制器方法,并让它以Json格式从控制器返回一个数组

控制器

public class HomeController: Controller
{ 

 public JsonResult GetArray() {

 // Code for getting array here

 // Convert array to JSON data
 return Json(new { Items =  ArrayName.ToList()});

 }
}
Ajax调用:

$.ajax({
      type: 'GET',
      url: "/Home/GetArray",
      dataType: "json",
      success: function(result){
            $(".container").append('<p>'+ result +'</p>');
         }
      error: function(){
         alert("Data was not fetched properly");
         }
});
$.ajax({
键入:“GET”,
url:“/Home/GetArray”,
数据类型:“json”,
成功:功能(结果){
$(“.container”).append(“”+result+”

”); } 错误:函数(){ 警报(“未正确获取数据”); } });

每当我调用Ajax时,总会返回一个错误。我在控制器中设置了断点,并且值被正确存储,但我不确定为什么它不能到达成功函数。

我相信MVC拒绝GET请求。您必须特别允许get请求。与json数据一起,将JsonRequestBehavior.AllowGet传递到return语句中

 return Json(new { Items =  ArrayName.ToList()},JsonRequestBehavior.AllowGet);

我希望这对你有帮助,你可以使用这种返回类型


返回Json(objResult,JsonRequestBehavior.AllowGet)

错误到底是什么?您需要添加JsonRequestBehavior.AllowGet,或者使用POST请求。