无法获得JsonResult的价值

时间:2014-08-13 00:02:11

标签: jquery asp.net-mvc

我试图获取MVC返回的JsonResult值的值来对值进行一些轮询更新,但是我无法从JsonResult中获取实际值。我是jquery / JsonResult的新手,所以我可能会忽略一些简单的事情。我已经查看了$ .each的jquery文档,以及定期获取/发布信息 - 到目前为止,我的魔法咒语都没有用。

类值:

public class ConnectionManager
{
    public static bool isRunning { get; private set; }
    public static bool isConnected { get; private set; }
    public static int connectionCount { get; private set; }
    public static int channelMonitoredCount { get; private set; }
    public static List<string> channelList  { get; private set; }
    ...

初始化:

public ConnectionManager()
    {
        isRunning = true;
        isConnected = false;
        connectionCount = 0;
        channelMonitoredCount = 0;
        channelList = new List<string>();
    }

GET - MVC:

[HttpGet]
    public JsonResult GetConnectionStatusPanel()
    {           
        var data = Json(new{Startup.CoreServicesManager});
        return data;
    }

Jquery:

$(document).ready(
function () {
    $.ajax({
        url: '/Home/GetConnectionStatusPanel',
        type: 'get',
        dataType: 'json',
        success: function (result) {
            $.each(result, function (k, v) {
                alert("Key: " + k + ", Value: " + v);
            });
        }
    });
});

预期输出:

Key: isRunning, true
Key: isConnected, false
Key: connectionCount, 0
... etc

实际输出:

Key: CoreServicesManager, Value: [object Object]

所以...我错过了什么?我想添加标签&#39; vNext&#39;因为它可能是相关的。我正在使用VS 14 - vNext MVC应用程序。

1 个答案:

答案 0 :(得分:0)

我想出了这个问题,在连接管理器类中,值不应该是静态的。删除静态解决了问题。