webservice里能否传递XML对象,客户端怎么引用?有点急
初涉webservice,问题背景是这样的,服务器端A(vb写的websercice),客户端B(asp文件用vbsciript),B要读取A中数据库记录保存到本地。我的思路是:A把数据库中的记录转换成XML文件,把XML文件对象传递给B,B引用这个对象进行写入本地操作。
A端代码:
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.ComponentModel
Imports System.Xml
' 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
<System.Web.Script.Services.ScriptService()> _
<System.Web.Services.WebService(Namespace:="http://tempuri.org/")> _
<System.Web.Services.WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
<ToolboxItem(False)> _
Public Class Service1
Inherits System.Web.Services.WebService
<WebMethod()> _
Public Function HelloWorld()
Dim strSourceFile = Server.MapPath("List2.xml")
Dim objXml = Server.CreateObject("Microsoft.XMLDOM")
objXml.load(strSourceFile)
Return objXml
'Return "a"
End Function
End Class
————————————————————
B端代码:
<%
SET SSO = Server.CreateObject("MSSOAP.SoapClient30")
SSO.ClientProperty("ServerHTTPRequest") = True
Call SSO.mssoapinit("http://127.0.0.1/wstest/Service1.asmx?WSDL")
a=SSO.HelloWorld()
a.save(Server.MapPath("List3.xml"))
%>
现在系统提示: a=SSO.HelloWorld() 未知错误。问问给我,1,我的思路是否有问题或者有没有更简单的;2,在B端的代码中怎么去引用A中传过来的XML对象,或者A中本身就有问题,当然A的代码我能正常发布至少语法是没有问题
[解决办法]
.net自己就能处理xml文件,为什么你还要创建ServerObject?
用 xmlDocument 类来看看。
[解决办法]
使用ajax的理论,再定义一个空白页面,然后该页面接受客户端请求并调用webservice,客户端在解析获得的xml