Javascript 如何将对象列表传递给ASP.NET WebService?

Javascript 如何将对象列表传递给ASP.NET WebService?,javascript,asp.net,json,web-services,Javascript,Asp.net,Json,Web Services,我有一个JavaScript对象列表,需要传递给ASP.NET WebService 目前,我将ScriptManager包括在我的页面中: <asp:ScriptManager runat="server"> <Services> <asp:ServiceReference Path="/ws_data.asmx" /> </Services>

我有一个JavaScript对象列表,需要传递给ASP.NET WebService

目前,我将ScriptManager包括在我的页面中:

        <asp:ScriptManager runat="server">
            <Services>
                <asp:ServiceReference Path="/ws_data.asmx" />
            </Services>
        </asp:ScriptManager>
并从JavaScript调用该方法:

    var parameters = '['+
            + '{"PlayerId":11, "Pos":12, "Flang":13"},'
            + '{"PlayerId":21, "Pos":22, "Flang":23"}'
            + ']';
    ws_data.SaveData(parameters, OnComplete, OnError, OnTimeOut);
调用方法时,我调用了接收方“OnError”,并显示错误消息:

Cannot convert object of type 'System.String' to type 'my_package.MyObject[]'
我的代码有什么问题

我对这两种使用过的技术(JSON、web服务、JavaScript)都不是很有经验,也不太了解不同的假设

请告知,欢迎任何帮助

注意:更改格式以符合JSON规范(由codenoire建议):

这有助于简化仅传递1个对象的情况,但传递数组仍会产生相同的错误。

尝试以下方法:

var parameters = [{"PlayerId":11, "Pos":12,"Flang":13}, {"PlayerId":21, "Pos":22,"Flang":23 }];

你是说没有外括号?当我只将一个对象传递给等待对象的方法时,Will tryIt适用于简化的情况。但这对数组不起作用。对于阵列,我仍然收到一个错误:500(内部服务器错误)。。。不知道为什么,它确实有用!问题是我使用了一个函数,它生成了数组的字符串表示形式,我应该调用eval(…)在object中转换它…我给你的例子是使用数组。是的,这就是我写的:在我的代码中我使用了字符串。。。因此需要添加“eval()”
var parameters = [
    {"PlayerId":11, "Pos":12,"Flang":13},
    {"PlayerId":21, "Pos":22,"Flang":23 }
    ];
var parameters = [{"PlayerId":11, "Pos":12,"Flang":13}, {"PlayerId":21, "Pos":22,"Flang":23 }];