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

时间:2015-03-13 05:54:13

标签: c# jquery asp.net ajax asp.net-web-api

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

image1

image2

这是web 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数组?

1 个答案:

答案 0 :(得分:0)

以下行解决了这个问题。

var discussionwalls = response['$values'];

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