Mvp.Xsl调用c#脚本

本文关键字:脚本 调用 Xsl Mvp | 更新日期: 2023-09-27 17:48:55

我使用Mvp。EXSLT的Xsl实现。我试图调用c#脚本在我的XSLT模板。它在使用XslCompiledTransform处理时工作,但不使用Mvp.Xsl。我得到以下错误:

Unhandled Exception: System.Xml.Xsl.XslTransformException: Execution of scripts was prohibited. Use the XsltSettings.EnableScript property to enable it.    

我理解这个错误时处理XslCompiled转换,我可以摆脱它使用XsltSettings:

System.Xml.Xsl.XsltSettings.Default.EnableScript = true; 

但这并不适用于Mvp。我和Xsl没有发现类似的设置。当使用Mvp.Xsl时,它甚至可以调用c#脚本吗?

非常感谢。切赫

Mvp.Xsl调用c#脚本

只有在需要脚本支持并且在完全可信的环境中工作时才应该启用XSLT脚本。

以下代码加载样式表并启用XSLT脚本支持。

// Create the XsltSettings object with script enabled.
XsltSettings settings = new XsltSettings(false,true);
// Create the XslCompiledTransform object and load the style sheet.
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("sample.xsl", settings, new XmlUrlResolver());