我有一个ScriptService
Web方法(.NET 3.5),它采用抽象基类型的单个参数:
[WebMethod(EnableSession=true)]
[ScriptMethod()]
public bool Test(Item item) { ... }
Run Code Online (Sandbox Code Playgroud)
和:
namespace Namespace {
public abstract class Item
{
public int id;
}
public class Group : Item
{
public Item[] items;
}
public class Instance : Item
{
public string whatever;
}
}
Run Code Online (Sandbox Code Playgroud)
通常,当调用方法时,item
将Group
包含Instance
和/或Group
对象.我从jQuery调用这个服务; 我没有使用Microsoft客户端框架.调用其他方法工作正常.
问题: 当我进行调用时,在调用我的方法之前会抛出异常.例如,如果我的电话是:
POST /WebService.asmx/Test HTTP/1.1
Content-Type: application/json; charset=UTF-8
Accept: application/json, text/javascript, */*
{"item":{"id":0,"__type":"Namespace.Group","items":[]}}
Run Code Online (Sandbox Code Playgroud)
......我得到了InvalidOperationException
:
{"Message":"Operation is not valid due to the …
Run Code Online (Sandbox Code Playgroud)