一.WebServiceProxy
一.Methods
1.invoke:执行异步调用web service的函数
Sys.Net.WebServiceProxy.invoke(path,methodName,useHttpGet,parameters,succeedCallback,failedCallback,userContext,timeout)
Path:web service的Url地址
methodName:需要执行的web service中的方法名称
useHttpGet:可选参数,默认为false,请求方式为POST,若设置为true,请求方式则为Get
parameters:可选参数,调用的js函数的名称
succeedCallback:可选参数,当请求成功后执行的函数
failedCallback:可选参数,当请求失败后执行的函数
userContext:可选参数,提交的用户相关信息
timeout:可选参数,执行的HTTP请求的等待时间,单位为毫秒
二.WebServiceError
一.Properties
1.exceptionType:获取错误的类型
var errorException:error.get_exceptionType();
2. message:获取错误的提示信息
var message=error.get_message();
3.stackTrace:获取追踪时的错误提示信息
var stackTrace=error.get_stackTrace();
4.statusCode:获取HTTP请求错误提示信息
var statusCode=error.get_statusCode();
5.timeOut:获取因为超时引起的错误信息
var timeout=error.get_timeOut();
三.客户端调用Web Service一般步骤
1.为Web Service添加[ScriptService]方法
2.为Web Service中需要暴露给客户端的方法添加[WebMethod]属性
3.在页面的ScriptManager控件中添加对web service的引用
4.使用客户端调用web service的方法
5.在客户端调用回调函数
6.若需要以HTTP GET方式调用,则修改为[ScriptMethod(UseHttpGet=true)]
7.复杂的数据类型还需要为web service添加[GenerateScriptType(typeof(type))]
四.客户端调用Web Service中DataTable类型
1.调用web service的一般步骤都添加完毕
2.将Ajax CTP的dll引用包复制到bin目录下
3.在web.config配置文件下的web extensions节点下添加如下代码
四.客户端调用Web Service中以XML方式导出数据
1.调用web service的一般步骤都添加完毕
为web service添加[ScriptMethod(ResponseFormat=ResponseFormat.xml)]
_____________________________________________________________________________________________________
简单调用,错误提示信息以及泛型调用
ConvertComplexData.aspx:
ComplexType.asmx:
}
}
点击GetClass按钮:
错误提示信息:
点击GetGeneric按钮:
————————————————————————————————————————————————
从客户端得到datatable
GetData.asmx:
}
}
GetData.js:
点击GetTable按钮:
——————————————————————————————————————————————————
得到XML类型数据:
XmlSer.asmx:
}
}
点击GetXML按钮: