【问题标题】:XSLT and XML QuestionXSLT 和 XML 问题
【发布时间】:2010-11-10 11:23:24
【问题描述】:

我有一个有趣的需求。

通常您使用 XSLT 来转换 XML 文档。转换后的 HTML 可以在 Web 浏览器中查看,效果很好。我也猜测浏览器会处理内存中的转换,因为如果您使用 XSLT 查看 xml 文档的页面源,您看不到 html,只有 xml。

我想做的是以下。

使用 c#

  1. 从文件系统中抓取一个 xml 文件.... 将其加载到某个框架对象中
  2. 附加 XSLT 样式表
  3. 将呈现的 HTML 输出回文件系统上的 html 文件。

这可能吗。

我不希望对整个解决方案提供完整的答案。只需朝着正确的方向推动就会很棒:)在此先感谢。

【问题讨论】:

    标签: c# .net xml xslt


    【解决方案1】:

    您可以使用System.Xml.Xsl 在 C# 中进行 XSLT。

    这里有一篇文章:XML transformation using Xslt in C# 解释了如何 - 这是它的核心:

    XPathDocument myXPathDoc = new XPathDocument(<xml file path>);
    XslTransform myXslTrans = new XslTransform();
    myXslTrans.Load(<xsl file path>);
    XmlTextWriter myWriter = new XmlTextWriter("result.html", null);
    myXslTrans.Transform(myXPathDoc, null, myWriter);
    

    编辑:@John 请注意:该代码说明了基本思想。它并不假装是生产质量。)

    【讨论】:

    • 我将您的答案标记为正确,因为您发布了更好的文章。
    • 请为文本编写器添加一个 using 块,也许使用 XmlWriter.Create?
    • @Richie:示例代码被复制和粘贴,人们抱怨说,“但 Richie Hindle 说没关系”。因此,-1。
    【解决方案2】:

    所以,我很快就找到了答案……这里全部解释了…… http://www.csharpfriends.com/Articles/getArticle.aspx?articleID=63

    【讨论】:

    • 如果您很快就找到了答案,为什么您没有在搜索提供商(例如谷歌)中尝试就先在这里发布问题
    【解决方案3】:

    如果html是无效格式的xml怎么办?

    看来我们不能使用 xslt?

    有什么意见吗?

    【讨论】:

    • 谷歌“beautifulsoup”、“htmltidy”和“html 敏捷包”
    猜你喜欢
    • 2010-09-29
    • 1970-01-01
    • 2016-10-21
    • 1970-01-01
    • 2010-12-11
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    相关资源
    最近更新 更多