获取JSON对象数组

时间:2013-09-19 16:10:57

标签: c# asp.net json firebug

我正在基于另一个类似的应用程序构建我的应用程序。 我正在使用firebug尝试获得相同的Response / JSON。

在工作应用程序中,“响应”选项卡显示: enter image description here

和“JSON”选项卡显示了几个具有关联属性的JSON对象: enter image description here

在损坏的应用程序中,“响应”选项卡显示: enter image description here
(它在数据周围放了一个“d”键并转义了所有的双引号)

和“JSON”选项卡只显示包含数据字符串的单个对象: enter image description here

调用以返回“损坏的”JSON响应的方法是:

    public static string GetMembers()
    {
        Member member1 = new Member();
        member1.Id = 1;
        member1.FirstName = "John";
        member1.LastName = "Smith";

        Member member2 = new Member();
        member2.Id = 2;
        member2.FirstName = "Bruce";
        member2.LastName = "Banner";

        List<Member> members = new List<Member>();
        members.Add(member1);
        members.Add(member2);

        return new JavaScriptSerializer().Serialize(members);
    }

我可以对我的方法做什么让它以与第一个应用程序相同的方式返回/显示JSON数据?

注意我没有第一个应用程序的源代码,我只是查看它在firebug中加载的页面。

1 个答案:

答案 0 :(得分:0)

应用程序会对数据进行处理,因为将数组直接传递给客户端存在安全漏洞。请参阅此resource for more information了解原因。这就是应用程序框架的原因。我认为很多其他序列化器都需要相同的......

您唯一的选择是序列化每个对象,并手动写出对象数组。但同样,请注意这样做的漏洞。