debugging - 将参数传递给Visual Studio的XSLT调试器

标签 debugging visual-studio-2010 xslt-tools xslt

我正在使用Visual Studio调试转换。通常,使用转换的应用程序还会传递一些参数:

XslTransform xslTransform = new XslTransform();
xslTransform.Load(myXslt);
XsltArgumentList transformArgumentList = new XsltArgumentList();
transformArgumentList.AddParam(paramName1, String.Empty, paramValue1); // this
transformArgumentList.AddParam(paramName2, String.Empty, paramValue2); // and this
xslTransform.Transform(inputStream, transformArgumentList, outputStream);

调试时如何设置参数?

最佳答案

How can I set the parameters when debugging?



您应该使用以下XslCompiledTransform constructor :
public XslCompiledTransform(
    bool enableDebug
)

并将enableDebug参数设置为true

然后,您可以开始调试,并且调试器将在XSLT转换中设置的断点处停止。

这是一个例子:
// Enable XSLT debugging.
XslCompiledTransform xslt = new XslCompiledTransform(true);

// Load the style sheet.
xslt.Load("MyTransformation.xsl");

// Create the writer.
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent=true;
XmlWriter writer = XmlWriter.Create("output.xml", settings);

// Execute the transformation.
xslt.Transform("books.xml", writer);
writer.Close();

当然,如果您很懒惰,则可以只对XSLT样式表中的参数值进行硬编码:
<xsl:param name="param1" select="SomeValue1"/>
<xsl:param name="param2" select="SomeValue2"/>

关于debugging - 将参数传递给Visual Studio的XSLT调试器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3897636/

相关文章:

visual-studio - Fiddler2 可以用于监视 Visual Studio 调试 session 中发出的 SOAP 请求吗

arrays - 是否有用于eclipse的插件在调试时检查2D数组?

c# - T-SQL:ASP.NET GridView 中选定列的动态查询

Netbeans 6.9 + XSL 自动完成

xslt - 如何在visual studio环境中使用EXSLT

python - 使用pdb调试Python时如何打印所有变量值,而不指定每个变量?

c - 断点如何在嵌入式设备上工作?

c# - Watin--无法解决嵌套框架中的按钮

c# - WPF 线程错误(处理了无效操作异常)

在 Chrome 中调试 XSLT