我正在使用 XDocument 创建一个使用 xsl 文件作为样式表的 xml 文件。我想让 xml 可下载,我对此没有任何问题,但我遇到的问题是,当我只想下载一个文件时,我有两个文件。
我使用以下内容包含链接:
doc.AddFirst(new XProcessingInstruction("xml-stylesheet", "type='text/xsl' href='Stylesheet.XSL'"));
是否可以将 xsl 文件合并到 XDocument 对象中?
编辑:发现我可以这样做:
XDocument transformedDoc = new XDocument();
using (XmlWriter writer = transformedDoc.CreateWriter())
{
XslCompiledTransform transform = new XslCompiledTransform();
transform.Load(XmlReader.Create(new StringReader(HttpContext.Current.Server.MapPath("~/XML/CareLog.xsl"))));
transform.Transform(doc.CreateReader(), writer);
}
transformedDoc.Save(HttpContext.Current.Server.MapPath("~/BrowserTemp/CareLog.xml"));
但是我在 transform.Load() 行上收到错误“根级别的数据无效”?我有什么需要注意的吗?