asp.net之将 JSON 传递给需要 ListT> 参数的 PageMethod
我有一个具有以下签名的 ASP.NET PageMethod:
<WebMethod()> _
Public Shared Function SaveCodes(ByVal codes As List(Of Code)) As String
我试图从客户端将一个 JSON 对象传递给 PageMethod,但我收到一个错误消息,指出类型 String 无法转换为列表类型 <Code> .
这是我在客户端构建并发送到方法的 json:
{
'代码':{
{ "companyID": "00000000-0000-0000-0000-000000000000", "customerType":"1", "code":"11 "},
{ "companyID": "00000000-0000-0000-0000-000000000000", "customerType":"1", "code":"21 "
这是我的 PageMethod 调用,(对象是上面的 json 字符串):
PageMethods.SaveCodes(objects, successFn, errorFn);
我已经能够传递简单的数据类型和 Code 类的单个实例,但我似乎无法找到将 List 传递给服务器方法的魔法。谁能告诉我我做错了什么?
请您参考如下方法:
我想通了。下面列出了正确的记法。缺少的主要部分是每个对象的 __type 属性。我不得不在从 PageMethod 返回的列表中四处挖掘才能找到它。
{"codes":
[
{"CompanyID":"00000000-0000-0000-0000-000000000000","Code":"11 ","CustomerType":"1","__type":"Code"},
{"CompanyID":"00000000-0000-0000-0000-000000000000","Code":"21 ","CustomerType":"1","__type":"Code"}
]
}
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。



