gpt4 book ai didi

.net - 为什么 XslCompiledTransform 向 HTML 输出添加 META 标记?

转载 作者:行者123 更新时间:2023-12-02 04:18:01 24 4
gpt4 key购买 nike

我使用此代码通过 XSLT 模板将 XML 转换为 HTML:

string uri = Server.MapPath("~/template.xslt");
XslCompiledTransform xsl = new XslCompiledTransform();
xsl.Load(uri);
XDocument xml = new XDocument(new XElement("Root"));
StringBuilder builder = new StringBuilder();
XmlReader reader = xml.CreateReader();
XmlWriter writer = XmlWriter.Create(builder, xsl.OutputSettings);
xsl.Transform(reader, writer);
writer.Close();

我的模板如下所示:

<?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 match="Root">
<html>
<head>...

输出正确,但包含 META 标记。如何禁用转换以便它不会生成 META 标记?

最佳答案

简短回答:

使用:

<xsl:output method="xml"/>

这消除了任何添加的 HTML 标签,例如 <meta> .

同时,您可能很难获得某些元素所需的准确词汇表示。

在 XSLT 2.0 中可以使用:

<xsl:output method="xhtml"/>

关于.net - 为什么 XslCompiledTransform 向 HTML 输出添加 META 标记?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4408725/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com