VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 网站开发 >
  • 使用 xsl 对 xml 文档进行动态排序,分页显示的扩展

作者: kw  
     在 http://www.asptoday.com/articles/20000724.htm 有非常好的例子,是关于
使用 xsl 对 xml 文档进行动态排序,分页显示的。
主要使用三个文件:
default.asp 把 xml, xsl 文件串起来
getxml.asp 对 default 来说相当于 xml
sample.xsl 主要的格式编排工作在这里做
===================================================
我们可以再进一步拓展这个巨酷的例子:
1。把 getxml.asp 写好。但我们的真正工作不在 asp 里做。我们用 vb。
这样一会我们就可以把这个贴子一稿多投到 VB 论坛。
形如:
<%@ Language=VBScript %>
<SCRIPT LANGUAGE=vbscript RUNAT=Server>
Dim oMyTool
Dim sXML
Set oMyTool = Server.CreateObject("MyPackage.MyComponent")
sXML = oMyTool.GetData()

Response.ContentType="text/xml"
Response.Write sXML

set oMyTool = nothing
</SCRIPT>

2。 在 VB 中我们使用 SQL 2000 的 for XML 来得到所需的 XML String。
Public Function GetData() As Variant

Dim oConn As ADODB.Connection
Dim oCmd As Command
Dim oRS As ADODB.Recordset
Dim myStream As ADODB.Stream
'Dim strConn As String
Dim strXML As String

Set oConn = New ADODB.Connection
oConn.Open (GetConnectionString)

Set oCmd = New ADODB.Command
oCmd.ActiveConnection = oConn

Set myStream = New ADODB.Stream
myStream.Open

oCmd.Properties("Output Stream") = myStream

oCmd.CommandText = "SELECT EmployeeID, LastName, FirstName, BirthDate, Notes " & _
"FROM Employees FOR XML auto"

oCmd.Execute , , adExecuteStream
myStream.Position = 0
strXML = myStream.ReadText
strXML = "<RET>" & strXML & "</RET>"

GetData = strXML

Set oCmd = Nothing
oConn.Close
Set oConn = Nothing

End Function
=============================
有两点要注意,一是 sql for xml auto 比较土,我们需要自己加上个 root。
二是我使用 GetConnectionString 获得 sql conn str 是因为把该 str
放在了 COM+ Construction string 里。这样一会我们就可以把这个贴子一稿多投到
COM 论坛和多层结构论坛,还有安全性论坛,当然还有 SQL 论坛。

我们只需要对 sample.xsl 稍作修改就可以显示我们的数据了。

 


相关教程