asp调用Webservice

  参考一下  
   
  //****服务器端*******  
  Service1.asmx里包含下面两个WEBMETHOD  
  [WebMethod]  
  public   DataSet   GetMyProductsDataSet(int   userID)//被调用时将返回DATASET序列的XML,此XML主要用于ADO.NET  
  {  
  string   sql;  
  DataSet   ds2=new   DataSet();  
  sql   =   "select   userid,productname   from   StockIC   where   UserID="+userID;  
  my_adapter   =   new   SqlDataAdapter(sql,this.sqlConnection1);  
  my_adapter.Fill(ds2,"Stock");  
  return   ds2;  
  }  
   
  [WebMethod]  
  //被调用时将返回ADO.Recodset序列的XML  
  public   System.Xml.XmlDocument   GetMyProductsRecordSet(int   userID),此XML主要用于ADO  
  {  
  string   sql;  
  ADODB.Recordset   rs=new   ADODB.Recordset();  
  ADODB.Stream   st=new   ADODB.Stream();  
  System.Xml.XmlDocument   xd=new   System.Xml.XmlDocument();  
  sql   =   "select   userid,productname   from   StockIC   where   UserID="+userID;  
  rs.Open(sql,this.sqlConnection3,ADODB.CursorTypeEnum.adOpenForwardOnly,ADODB.LockTypeEnum.adLockReadOnly,   1);  
  rs.Save(st,ADODB.PersistFormatEnum.adPersistXML);  
  st.Flush();  
  st.Position=0;  
  xd.LoadXml(st.ReadText(st.Size));  
  return   xd;  
  }  
   
   
   
  '****客户端*******  
  'XMLHTTP调用并装载到ADO.RECORDSET分析(简单方便),可以直接由XMLDOM来分析  
   
  Set   objHTTP   =   Server.CreateObject("MSXML2.XMLHTTP.4.0")  
  Set   objXmlDoc   =Server.CreateObject("MSXML2.DOMDocument.3.0")  
  strWebserviceURL   =   "http://192.168.1.88/Service1.asmx/GetMyProductsRecordSet"  
  strRequest   =   "userID=43"  
  objHTTP.Open   "post",   strWebserviceURL,   False  
  objHTTP.SetRequestHeader   "Content-Type",   "application/x-www-form-urlencoded"  
  objHTTP.Send(strRequest)  
  objXmlDoc.load   objHTTP.responseXML  
  set   rs=server.CreateObject("adodb.recordset")  
  rs.Open   objXmlDoc'必须是ADO.Recodset序列的XML,如果上面http://192.168.1.88/Service1.asmx调用的方法GetMyProductsRecordSet改成GetMyProductsDataSet将报错  
  if   rs   is   nothing   then   response.Write   "rsisnothing"  
  if   rs.EOF   then  
  response.Write   "rs.EOF"  
  else  
  while   not   rs.EOF    
  response.Write   rs(0)   &   "<br/>"  
  rs.MoveNext  
  wend  
  end   if  
  set   objXmlHttp=nothing  
  set   objXmlDoc=nothing  
  set   rs=nothing

转载于:https://www.cnblogs.com/voswin/articles/1281690.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值