ASP MVC AJAX在JavaScript中作为关联数组返回对象和访问

ASP MVC AJAX在JavaScript中作为关联数组返回对象和访问,javascript,c#,asp.net,ajax,asp.net-mvc,Javascript,C#,Asp.net,Ajax,Asp.net Mvc,目前,我正试图通过对C#controller使用AJAX请求来了解ASP MVC;我可以通过AJAX请求调用我的控制器。然而,我正在努力回报我所期待的结果 总的来说,我试图从数据库中获取一些数据,并将其作为数组返回给JavaScript。如果在JavaScript中,我可以使用关联数组以array[“key”]等格式访问数据,那就太棒了 然而,这就是我在AJAX请求中遇到的情况,最初我从AJAX调用控制器 $.ajax({ type: "POST", url: "

目前,我正试图通过对C#controller使用AJAX请求来了解ASP MVC;我可以通过AJAX请求调用我的控制器。然而,我正在努力回报我所期待的结果

总的来说,我试图从数据库中获取一些数据,并将其作为数组返回给JavaScript。如果在JavaScript中,我可以使用关联数组以
array[“key”]
等格式访问数据,那就太棒了

然而,这就是我在AJAX请求中遇到的情况,最初我从AJAX调用控制器

$.ajax({
        type: "POST",
        url: "/booking/getParks",
        dataType: "JSON",
        async: false,
        success: function (data) {
            alert(data.data);
        }
    });
这调用了我的预订控制器中非常简单的函数,如下所示

[AcceptVerbs(HttpVerbs.Post)]
        public ActionResult getParks(string stylesheet)
        {
            var parks = Database.Open("SQLServerConnectionString").Query("SELECT * FROM Park");
            return Json(new { data = parks });
        }
现在,当我在JavaScript AJAX成功函数中发出警报时,您可以看到我调用了
data.data
,这将输出以下内容:

现在,如果我要引用
数据.data[0]
,这将输出
[object object]
,如果我要进一步引用
数据.data[0][“id”]
,在我的例子中,我希望输出为1。相反,我收到的是
未定义的

现在,我猜这与我返回C#dynamic的方式有关

但是,我假设我将对象返回到AJAX的方式不正确

如何返回值,使其成为JavaScript中的关联数组?或者甚至是一种我可以接收数据并将其转换为JavaScript的方法

多谢各位

编辑:

alert(JSON.stringify(data));
返回:


SQL Server以DataTable格式返回数据,在返回到脚本之前,必须将其转换为JSON或List

类似:(使用Nuget中提供的Newtonsoft Json包)


以字符串形式通知json以查看其中的内容:
Alert(json.stringify(data))公园的数据类型是什么?数据集?自定义实体类?@EhsanSajjad-我用JSON stringify响应编辑了这篇文章。@Tseng parks是stringify结果的IEnumerable,看起来更像是返回一个表或列表
string JSONresult;
JSONresult = JsonConvert.SerializeObject(parks);
return JSONresult;