我试图执行一个Web服务,该服务使用以下代码返回一个DataTable:
如果Web服务返回一个类,那么它就可以正常工作,这与输入参数等无关。只有当Web方法返回一个数据表时才会失败(对于我正在测试的数据表,它只有2列和2行)。
WebService类使用[ScriptService]属性进行装饰,因此我认为ASP.NET会自动将返回值序列化为JSON。但似乎不能用于数据表。
我找到的唯一解决方案是返回一个字符串(手动JSON序列化对象),但我觉得这样做不太对。
我使用的是Visual Studio 2008和.Net 3.5。
$.ajax({
type: "POST",
url: url,
data: data,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
//do things
}
});
如果Web服务返回一个类,那么它就可以正常工作,这与输入参数等无关。只有当Web方法返回一个数据表时才会失败(对于我正在测试的数据表,它只有2列和2行)。
WebService类使用[ScriptService]属性进行装饰,因此我认为ASP.NET会自动将返回值序列化为JSON。但似乎不能用于数据表。
我找到的唯一解决方案是返回一个字符串(手动JSON序列化对象),但我觉得这样做不太对。
我使用的是Visual Studio 2008和.Net 3.5。