【问题标题】:ASP.NET MVC Ajax Call not returning Json data from controllerASP.NET MVC Ajax 调用不从控制器返回 Json 数据
【发布时间】:2017-08-30 17:36:59
【问题描述】:

我正在开发一个 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 调用时,总是会返回一个错误。我在我的控制器中设置了断点并且值被正确存储但我不确定为什么它不会达到成功功能。

【问题讨论】:

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

标签: json ajax asp.net-mvc


【解决方案1】:

我相信 MVC 会拒绝 GET 请求。您必须明确允许获取请求。连同您的 json 数据,将 JsonRequestBehavior.AllowGet 传递到您的返回语句中。

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

【讨论】:

    【解决方案2】:

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

    return Json(objResult, JsonRequestBehavior.AllowGet);

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-30
      • 1970-01-01
      • 2021-09-15
      相关资源
      最近更新 更多