Best way to pass an array from JavaScript to C#?
我需要将JavaScript中的数组传递给C#中的page方法。我试过在IList的C#方法中使用一个参数以及一个string []数组。两种方式均会引发异常"无法将类型为system.string的对象转换为xxx",其中xxx是C#方法中的参数类型。我正在将jQuery中的对象作为json对象传递,并且看起来像是通过了正确处理。外观如下:
1 | {"testNumbers":"5555555555,3333333333,4444444444"} |
我在这里做错什么了吗?
编辑:C#代码:
1 2 3 4 5 6 | [WebMethod()] public static void ProcessAction(string[] testNumbers) { var dataProvider = new DataProvider(); dataProvider.ProcessAction(testNumbers); } |
嗯,两件事:
尝试以下方法:
1 | {"testNumbers": [5555555555,3333333333,4444444444]} |
您需要使用.NET JSON反序列化器之一:
http://msdn.microsoft.com/zh-cn/library/bb299886.aspx
1 | {"testNumbers":["5555555555","3333333333","4444444444"]} |
我应该和解串器一起解决这个问题。参见