JSON在数组中填充不正确

时间:2016-11-14 03:16:43

标签: c# jquery arrays json

我收到了以下JSON:

    public void onCLickAddButton(View view) {

        Integer tag = (Integer) view.getTag();
        csr.moveToPosition(tag);

        //DO your stuff here.

    }

当我填充数组时,它只打印出第一个对象[ { "name":"Bob", "gender":"Male", "age":23, "pets": [ { "name":"Garfield", "type":"Cat" }, { "name":"Fido", "type":"Dog" } ] }, { "name":"Jennifer", "gender":"Female", "age":18, "pets": [ { "name":"Garfield", "type":"Cat" } ] }, { "name":"Steve", "gender":"Male", "age":45, "pets":null }, { "name":"Fred", "gender":"Male", "age":40, "pets": [ { "name":"Tom", "type":"Cat" }, { "name":"Max", "type":"Cat" }, { "name":"Sam", "type":"Dog" }, { "name":"Jim", "type":"Cat" } ] }, { "name":"Samantha", "gender":"Female", "age":40, "pets": [ { "name":"Tabby", "type":"Cat" } ] }, { "name":"Alice", "gender":"Female", "age":64, "pets": [ { "name":"Simba", "type":"Cat" }, { "name":"Nemo", "type":"Fish" } ] } ] 而不是其他对象。要打印的代码是:

Owner.cshtml

Bob

OwnerController:

$(document).ready(function() {
        $("button").click(function () {
            $.get("@Url.Action("GetOwnerDetailsAsJson", "Home")",
                function (response) {

                    var $male = $('#male');


                    for (var i = 0; i <= response.length; i++)
                    {
                        $male.append('<li> ' + 'Name: ' + response[i].Name + ' Pets: ' + response[i].Pets[i].Name + ' <li>');
                    }

                });


        });
    });

HomeController中:

public Array GetOwnerDetailsFromJson()
    {
        var url = "http://www.igeniusgroup.com/people.json";
        WebRequest request = WebRequest.Create(url);
        WebResponse response = request.GetResponse();
        string json;
        using (var sr = new StreamReader(response.GetResponseStream()))
        {
            json = sr.ReadToEnd();
        }
        Owner[] ownersArray = JsonConvert.DeserializeObject<Owner[]>(json); 
        return ownersArray;

我在某个地方出错然而无法分辨到哪里。请帮忙

0 个答案:

没有答案