Mega Code Archive

 
Categories / ASP.Net Tutorial / ADO Net Database
 

The ASPX Page and XSLT to style the XML from SQL Server (VB)

<%@ Page Language="VB"           AutoEventWireup="false"           CodeFile="Default.aspx.vb"           Inherits="_Default" %>           <asp:xml id="Xml1" runat="server" transformsource="~/Data.xslt"/> File: Data.xslt Imports System.Data Imports System.Data.SqlClient Imports System.IO Imports System.Xml Imports System.Xml.XPath Imports System.Xml.Xsl Partial Class _Default     Inherits System.Web.UI.Page     Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) _            Handles Me.Load         Dim connStr As String = "database=Northwind;Data Source=.\SQLEXPRESS;" & _                 " User id=Tom;pwd=password"         Dim x As New XmlDocument()         Dim xpathnav As XPathNavigator = x.CreateNavigator()         Using conn As New SqlConnection(connStr)             conn.Open()             Dim command As New SqlCommand("select * from Customers as Customer " & _                 "for XML AUTO, ELEMENTS", conn)             Using xw As XmlWriter = xpathnav.PrependChild()                 xw.WriteStartElement("Customers")                 Using xr As XmlReader = command.ExecuteXmlReader()                     xw.WriteNode(xr, True)                 End Using                 xw.WriteEndElement()             End Using         End Using         Xml1.XPathNavigator = xpathnav     End Sub End Class File: Data.xslt <?xml version="1.0" encoding="utf-8" ?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">     <xsl:output method="html"/>     <xsl:template match="/">         <h3>List of Customers</h3>         <table border="1">             <tr>                 <td>Company Name</td><td>Contact Name</td><td>Contact Title</td>             </tr>             <xsl:apply-templates select="//Customer"/>         </table>     </xsl:template>     <xsl:template match="Customer">         <tr>             <td><xsl:value-of select="CompanyName"/></td>             <td><xsl:value-of select="ContactName"/></td>             <td><xsl:value-of select="ContactTitle"/></td>         </tr>     </xsl:template> </xsl:stylesheet>