asp.net 4.5 练习~test15-1 xml文件使用xslt转换格式

此示例是使用xslt对xml文件转换格式的。

xmlfile1.xml

<?xml version="1.0" encoding="utf-8" ?> 
<?xml-stylesheet type="text/xsl" href="style.xsl"?>

<xinwen>
  <news>
    <news_id>1</news_id>
    <news_title>上海国际艺术节开幕</news_title>
    <news_author>王建宁</news_author>
    <news_ly>原创</news_ly>
    <news_content>第十三届中国上海国际艺术节将于11月18日举办。</news_content>
    <news_adddate>2013-10-18</news_adddate>
  </news>
  <news>
    <news_id>2</news_id>
    <news_title>上海首批公租房下月起招租</news_title>
    <news_author>王水宁</news_author>
    <news_ly>转载</news_ly>
    <news_content>两小区分别位于徐汇华庭和上体馆附近。</news_content>
    <news_adddate>2013-10-18</news_adddate>
  </news>
</xinwen>

xsltfile.xslt

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:template match="xinwen">
    <html>
      <body>
        <table border="1">
          <tr>
            <th>新闻编号</th>
            <th>新闻标题</th>
            <th>新闻作者</th>
            <th>新闻类别</th>
            <th>新闻内容</th>
            <th>发布日期</th>
          </tr>
          <xsl:for-each select="news">
            <tr>
              <td>
                <xsl:value-of select="news_id"/>
              </td>
              <td>
                <xsl:value-of select="news_title"/>
              </td>
              <td>
                <xsl:value-of select="news_author"/>
              </td>
              <td>
                <xsl:value-of select="news_ly"/>
              </td>
              <td>
                <xsl:value-of select="news_content"/>
              </td>
              <td>
                <xsl:value-of select="news_adddate"/>
              </td>
            </tr>
          </xsl:for-each>
        </table>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

webform1.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="test15_1.WebForm1" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Xml ID="Xml1" runat="server"></asp:Xml>
        <asp:Button ID="Button1" runat="server" Text="文件转换" OnClick="Button1_Click" />
    </div>
    </form>
</body>
</html>

webform1.aspx.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace test15_1
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
            doc.Load(Server.MapPath("XMLFile1.xml"));
            this.Xml1.Document = doc;
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            System.Xml.XmlDocument xDoc = new System.Xml.XmlDocument();
            xDoc.Load(Server.MapPath("XMLFile1.xml"));
            System.Xml.Xsl.XslTransform xslt1 = new System.Xml.Xsl.XslTransform();
            xslt1.Load(Server.MapPath("XSLTFile1.xslt"));
            this.Xml1.Document = xDoc;
            this.Xml1.Transform = xslt1;
        }
    }
}

猜你喜欢

转载自blog.csdn.net/modern358/article/details/114820677
今日推荐