如何通过ASP.NET从xsl文件中检索xsl:output媒体类型值

如何通过ASP.NET从xsl文件中检索xsl:output媒体类型值,asp.net,xslt,xslcompiledtransform,Asp.net,Xslt,Xslcompiledtransform,是否有方法检索媒体类型值?e、 g.与OutputSettings.OutputMethod类似,OutputMethod用于获取xsl:output方法。您可以通过处理XML的首选方法(例如作为)查询xsl样式表,并发出以下XPath查询(不要忘了预先使用名称空间管理器使xsl名称空间可用于XPath): /*/xsl:output/@media-type LINQ也可以达到同样的效果。多亏了Tomalak。它起作用了。我从未想过XSLT的结构与XML相似。酷。@HH:XSLT不是一个“类似的

是否有方法检索媒体类型值?e、 g.与OutputSettings.OutputMethod类似,OutputMethod用于获取xsl:output方法。

您可以通过处理XML的首选方法(例如作为)查询xsl样式表,并发出以下XPath查询(不要忘了预先使用
名称空间管理器
使xsl名称空间可用于XPath):

/*/xsl:output/@media-type
LINQ也可以达到同样的效果。

多亏了Tomalak。它起作用了。我从未想过XSLT的结构与XML相似。酷。@HH:XSLT不是一个“类似的结构”,XSLT是XML-就这么简单。。)
XPathNavigator objArgXPathNavigator = objArgXsltDocument.CreateNavigator();
XPathExpression objXPathExpression = objArgXPathNavigator.Compile("/*/xsl:output/@media-type");
XmlNamespaceManager objXmlNamespaceManager = new XmlNamespaceManager(objArgXPathNavigator.NameTable);
objXmlNamespaceManager.AddNamespace("xsl", "http://www.w3.org/1999/XSL/Transform");
objXPathExpression.SetContext(objXmlNamespaceManager);

XPathNodeIterator nodes = objArgXPathNavigator.Select(objXPathExpression);
while (nodes.MoveNext())
{
  objArgHttpContext.Response.Write(nodes.Current.ToString());
}
XPathNavigator objArgXPathNavigator = objArgXsltDocument.CreateNavigator();
XPathExpression objXPathExpression = objArgXPathNavigator.Compile("/*/xsl:output/@media-type");
XmlNamespaceManager objXmlNamespaceManager = new XmlNamespaceManager(objArgXPathNavigator.NameTable);
objXmlNamespaceManager.AddNamespace("xsl", "http://www.w3.org/1999/XSL/Transform");
objXPathExpression.SetContext(objXmlNamespaceManager);

XPathNodeIterator nodes = objArgXPathNavigator.Select(objXPathExpression);
while (nodes.MoveNext())
{
  objArgHttpContext.Response.Write(nodes.Current.ToString());
}