Mvp.Xsl调用C#脚本

时间:2011-04-05 07:26:10

标签: c# xslt exslt

我正在使用EXSLT的Mvp.Xsl实现。我正在尝试在我的XSLT模板中调用C#脚本。它在使用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#脚本?

非常感谢, 彼得

1 个答案:

答案 0 :(得分:2)

只有在需要脚本支持并且您在完全受信任的环境中工作时,才应启用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());
相关问题