【编程开发】AspAsp.NetCGIPHPJspXMLPERLC++C#VCVBDelphiPowerBuilderJAVA汇编数据库编程移动开发其它语言

您现在的位置:首页 > 网络学院 > 编程开发 > XML > 基于XML的桌面应用

基于XML的桌面应用

来源: 作者: 日期:2006-08-11

【聚杰网XML】基于XML的桌面应用



  前面已经提到,通过XSL,我们可以把相同的数据以不同的数据形式提交给终端客户,一个XSL文件描述了数据的显示方式,你可以把许多XSL和同一个XML文档相连来提供不同的基于HTML的表示,这样事实上,我们就可以建立基于XML的桌面应用程序。基于Windows体系结构的一个图形表示如下所示:



  采用这种方法主要有两个优点,首先,你可以以平台和语言独立的方式来操作数据,其次,不需要编程你就可以实现对同样数据的不同的视图表示。

  实际上,你需要一个工具能够把原始的数据转化为XML格式化的形式,然后用HTML的格式表示出来。实际上在IE5.0中,你可以通过它对XSL的支持来实现数据的不同视图。可以使用内建的XSL处理器来从XML流中产生输出。开发人员可以编写不同的XSL剧本,然后用IE内建的XSL处理器对它进行处理。另一方面,我们可以通过ADO组件的内在功能实现把记录集转化为XML格式,示例代码如下:

  If Dir(XML_FILE) = "" Then
    rs.Save XML_FILE, adPersistXML
  End If

  这里常量adPersistXML表示使用一个XML纲要来保存记录集的内容

  我们再仔细看一下Recordset对象的Save方法,其定义如下:

   Save([FileName As String], [PersistFormat As PersistFormatEnum = adPersistADTG])

  每一个参数都是可选的,但是当你第一次把记录集保存到磁盘上的时候,你必须指定文件的名称。如果当该方法执行的时候,存在一个有效的过滤器的话,只有通过过滤的数据才能够被保存。当调用Recordset对象的方法Close关闭Recordset对象的时候,文件也被自动关闭。当Recordset被保存到磁盘上以后,你可以采用Open方法来阅读它,具体代码如下:

   rs.open "c:/myrs.xml"

  然后我们分析一下关于XML数据的显示的问题,IE5对XSL的支持是基于W3C最近的草案标准建立的。这里我们讨论用VB建立一个应用,它通过ADO接口来访问数据源中的数据。得到的记录集可以以不同的格式化的形式展现。通过编写XSL文档,你可以任意的增加不同的视图。

  比如,一旦你提取了一个结果集以后,你可以在VB中用DataGrid控件方便的显示数据,具体代码如下:

   Set rs = New ADODB.Recordset
   rs.CursorLocation = adUseClient

   queryString = "select * from Employees"
   rs.Open queryString, "NorthWind" 'NorthWind是微软的示例数据库,很容易在
    'ACCESS或者是SQL SERVER中找到
   rs.ActiveConnection = Nothing
   Set DataGrid1.DataSource = rs

  在许多情况下,这个的一个视图是不够的,你需要对每个字段进行严格的控制。整个表中的记录可能既用表格又用树的形式表示,提供多个视图会让用户感到更加舒服。 XML和XSL相结合是这种问题的很好的解决方案,你可以充分利用IE5中的WebBrowser控件的功能直接进行浏览


1 2 3 4 下一页

评论   点击查看全部评论
您的评论参与,将为聚杰带来更大的动力!请不要吝啬!
快速回复
请使用文明语言让我们维护健康绿色网络环境!

匿名发表   验证码: