Display data from database in asp:Xml with xml transformation : XslTransform « XML « ASP.NET Tutorial






<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="XmlDataSet" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <div class="Box">
        <asp:Button ID="cmdDataSetToXml" runat="server" Text="Display DataSet as XML" OnClick="cmdDataSetToXml_Click" Width="185px"/>
        <asp:Xml ID="XmlControl" runat="server" EnableViewState="False"></asp:Xml><br />

    </div>
    </form>
</body>
</html>

File: Default.aspx.cs

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Web.Configuration;
using System.Xml;

public partial class XmlDataSet : System.Web.UI.Page
{
  protected void cmdDataSetToXml_Click(object sender, EventArgs e)
  {
    string connectionString =
        WebConfigurationManager.ConnectionStrings["Pubs"].ConnectionString;
    string SQL = "SELECT * FROM authors WHERE city='Oakland'";

    SqlConnection con = new SqlConnection(connectionString);
    SqlCommand cmd = new SqlCommand(SQL, con);
    SqlDataAdapter adapter = new SqlDataAdapter(cmd);
    DataSet ds = new DataSet("AuthorsDataSet");

    con.Open();
    adapter.Fill(ds, "AuthorsTable");
    con.Close();

    XmlDataDocument dataDoc = new XmlDataDocument(ds);

    XmlControl.XPathNavigator = dataDoc.CreateNavigator();
        XmlControl.TransformSource = "Data.xsl";
  }
}


File: Data.xsl

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                version="1.0">

<xsl:template match="AuthorsDataSet">
   <h1>The Author List</h1>
      <xsl:apply-templates select="AuthorsTable"/>
   <i>Created through XML and XSLT</i>
</xsl:template>

<xsl:template match="AuthorsTable">

<b>Name: </b><xsl:value-of select="au_lname"/>, <xsl:value-of select="au_fname"/>
<br/>
<b>Phone: </b> <xsl:value-of select="phone"/>

</xsl:template>

</xsl:stylesheet>


File: Web.config

<?xml version="1.0"?>
<configuration>
  <connectionStrings>
    <add name="Pubs" connectionString="Data Source=localhost\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=Pubs;"/>
  </connectionStrings>
</configuration>








25.19.XslTransform
25.19.1.Use XslTransform to trasnform XML data to HTML file (VB.net)
25.19.2.Read the transformed result of XslTransform and output the result (VB.net)
25.19.3.Display data from database in asp:Xml with xml transformation
25.19.4.Transform XML document to HTML