C# 在ajax请求中获取不正确的json响应

C# 在ajax请求中获取不正确的json响应,c#,jquery,ajax,json,jsonp,C#,Jquery,Ajax,Json,Jsonp,我需要发送大字节数组作为REST服务对ajax请求的响应。我正在创建列表,如下所示: List<List<Byte>> list = new List<List<byte>>(); 请求成功完成,但在firebug中,我注意到,我在success中获得了数据,作为503json的集合,每个json都有54(!)键。我想我应该先在data中的502json中获得1000键&只有在第503次我才能获得54键。我遗漏了什么吗?因为您使用了相同的inn

我需要发送大字节数组作为REST服务对ajax请求的响应。我正在创建列表,如下所示:

List<List<Byte>> list = new List<List<byte>>(); 

请求成功完成,但在
firebug
中,我注意到,我在
success
中获得了
数据,作为
503
json的集合,每个json都有
54
(!)键。我想我应该先在
data
中的
502
json中获得
1000
键&只有在第503次我才能获得54键。我遗漏了什么吗?

因为您使用了相同的
innerList
实例,该实例的末尾有54字节长。尝试创建新实例

例如,代替
innerList.Clear()
,尝试
innerList=newlist()


编辑

由于您将文件内容作为json传递,我想性能不是您主要关心的问题。 如果是这样的话,您可以使用下面的Linq(有副作用),它更短,更不容易出错

int cnt = 0;
List<List<byte>> chunks = fileBytes
                            .GroupBy(x => cnt++ / 1000)
                            .Select(x => x.ToList())
                            .ToList();
int cnt=0;
列表块=文件字节
.GroupBy(x=>cnt++/1000)
.Select(x=>x.ToList())
.ToList();
$.ajax({
                type: "GET",
                dataType: "jsonp",
                contentType: "jsonp", 
                data: dd,
                crossDomain: true,
                jsonp: "callback",
                url: "http://xxx.xxx.xxx.xx/MyWebService/WebService.svc/MyMethod",
                success: function (data) {
                    console.log(data);
                },
                complete: function (request, textStatus) { //for additional info
                    alert(request.responseText);
                    alert(textStatus);
                },
                error: function(request, textStatus, errorThrown) {
                    alert(textStatus);
                  }
            });
int cnt = 0;
List<List<byte>> chunks = fileBytes
                            .GroupBy(x => cnt++ / 1000)
                            .Select(x => x.ToList())
                            .ToList();