三个文件 XSLFile.xslt,Default.aspx,XMLFile.xml
XMLFile.xml
<?xml version="1.0" encoding="utf-8" ?>
<root>
<class >
<item name="ds" age="20" grade="一年级"/>
<item name="clm" age="17" grade="二年级"/>
</class>
</root>
XSLFile.xslt
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
<xsl:output method="html" indent="yes"/>
<xsl:template name="root" match="/">
<table border="1">
<xsl:for-each select="//class/item">
<tr>
<td>
<xsl:value-of select="@name"/>
</td>
<td>
<xsl:value-of select="@age"/>
</td>
<td>
<xsl:value-of select="@grade"/>
</td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
Default.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<%
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
doc.Load(HttpContext.Current.Server.MapPath("~/XMLFile.xml"));
string xsltPath1 = HttpContext.Current.Server.MapPath("~/XSLFile.xslt");
var stream = HttpContext.Current.Response.Output;
System.Xml.Xsl.XslCompiledTransform xsl = null;
xsl = new System.Xml.Xsl.XslCompiledTransform();
var s = new System.Xml.Xsl.XsltSettings(true, true);
var resolver = new System.Xml.XmlUrlResolver
{
Credentials = System.Net.CredentialCache.DefaultCredentials
};
xsl.Load(xsltPath1, s, resolver);
xsl.Transform(doc, null, stream);
stream.Flush();
stream.Close();
%>
</div>
</form>
</body>
</html>
结果.