您现在的位置:计算机技术学习网 > 技术中心 > WEB编程 > ASP >

用ASP、VB和XML建立互联网应用程序(4)

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 14:48 点击:
前面我们已经介绍了使用ASP和xml(标准化越来越近了)混合编程,那是因为ASP页面能够很容易让我们看清应用程序正在做什么,但是你如果你不想使用ASP的话,你也可以使用任何你熟悉的技术去创建一个客户端程序。下面,我提供了一段VB代码,它的功能和ASP页面一样,也可以显示相同的数据,但是这个VB程序不会创建发送到服务器的xml(标准化越来越近了)字符串。它通过运行一个名叫Initialize的存储过程,从服务器取回xml(标准化越来越近了)字符串,来查询ClientCommands表的内容。

  ClientCommands表包括两个域:command_name域和command_xml(标准化越来越近了)域。客户端程序需要三个特定的command_name域:getCustomerList,CustOrderHist和RecentPurchaseByCustomerID。每一个命令的command_xml(标准化越来越近了)域包括程序发送到getData.asp页面的xml(标准化越来越近了)字符串,这样,就可以集中控制xml(标准化越来越近了)字符串了,就象存储过程名字所表现的意思一样,在发送xml(标准化越来越近了)字符串到getData.asp之前,客户端程序使用xml(标准化越来越近了) DOM来设置存储过程的参数值。我提供的代码,包含了用于定义Initialize过程和用于创建ClientCommands表的SQL语句。

  我提供的例程中还说明了如何使用XHTTPRequest对象实现我在本文一开始时许下的承诺:任何远程的机器上的应用程序都可以访问getData.asp;当然,你也可以通过设置IIS和NTFS权限来限制访问ASP页面;你可以在服务器上而不是客户机上存储全局应用程序设置;你可以避免通过网络发送数据库用户名和密码所带来的隐患性。还有,在IE中,应用程序可以只显示需要的数据而不用刷新整个页面。

  在实际的编程过程中,你们应当使用一些方法使应用程序更加有高效性。你可以把ASP中的关于取得数据的代码端搬到一个COM应用程序中去然后创建一个XSLT变换来显示返回的数据。好,我不多说了,现在你所要做的就是试一试吧!

   Option Explicit
   Private RCommands As Recordset
   Private RCustomers As Recordset
   Private RCust As Recordset
   Private sCustListCommand As String
   Private Const dataURL = "http://localhost/XHTTPRequest/getData.asp"
   Private arrCustomerIDs() As String
   Private Enum ActionEnum
   VIEW_HISTORY = 0
   VIEW_RECENT_PRODUCT = 1
  End Enum

  Private Sub dgCustomers_Click()
   Dim CustomerID As String
   CustomerID = RCustomers("CustomerID").Value
   If CustomerID <> "" Then
    If optAction(VIEW_HISTORY).Value Then
     Call getCustomerDetail(CustomerID)
    Else
     Call getRecentProduct(CustomerID)
    End If
   End If
  End Sub

  Private Sub Form_Load()
   Call initialize
   Call getCustomerList
  End Sub

  Sub initialize()
    从数据库返回命令名和相应的值

   Dim sxml(标准化越来越近了) As String
   Dim vRet As Variant
   Dim F As Field
   sxml(标准化越来越近了) = "<?xml(标准化越来越近了) version=""1.0""?>"
   sxml(标准化越来越近了) = sxml(标准化越来越近了) & "<command><commandtext>Initialize</commandtext>"
   sxml(标准化越来越近了) = sxml(标准化越来越近了) & "<returnsdata>True</returnsdata>"
   sxml(标准化越来越近了) = sxml(标准化越来越近了) & "</command>"
   Set RCommands = getRecordset(sxml(标准化越来越近了))
   Do While Not RCommands.EOF
    For Each F In RCommands.Fields
     Debug.Print F.Name & "=" & F.Value
    Next
    RCommands.MoveNext
   Loop
  End Sub

  Function getCommandxml(标准化越来越近了)(command_name As String) As String
   RCommands.MoveFirst
   RCommands.F

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • WAP常见问题问答大全(四)
      • ASP开发必备:WEB打印代码大全
      • ASP调用系统ping命令
      • asp缓存技术
      • ASP教程:第三篇 ASP基础
      • 用ASP+XML打造留言本(4)
      • 关于ASP Recordset 分页出现负数解决方法及建议
      • 用asp怎样编写文档搜索页面(5)
      • ASP处理多关键词查询实例代码
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1