为什么 response.d returns null 而响应有一组有效的结果 - 在 asp.net web api

why response.d returns null while response has a valid set of results - in asp.net web api

我正在尝试在我的应用程序中使用 Web Api。一切似乎都在工作接受读取 json 数据。下面是我的 jQuery 调用网络 api 方法的代码,以及变量的值。如您所见,response.d returns 是一个未定义的值,而 response 实际上有一组值。

这是网络api方法:

        public IEnumerable<DiscussionWall> GetDiscussionWallsByCourse(int courseid)
    {
        gEchoLuDBContext db = new gEchoLuDBContext();
        var discussionwalls = db.DiscussionWalls.Where(dw => dw.CourseId == courseid);

        if (discussionwalls == null)
            throw new HttpResponseException(HttpStatusCode.NotFound);
        else
            return discussionwalls;
    }

为什么在这种情况下我不能简单地使用 response.d?响应采用这种格式 { $id="1", $values=[3] }?如何读取 $values 数组?

下一行解决了这个问题。

var discussionwalls = response['$values'];

但是,我想知道这是否会产生安全问题,我想知道为什么 response.d 在这种情况下不起作用。有人有想法吗?