【问题标题】:Viewing the output of Visual Studio's XSLT debugger查看 Visual Studio 的 XSLT 调试器的输出
【发布时间】:2014-03-27 17:49:49
【问题描述】:

我正在使用 Visual Studio 调试转换。如果我正在查看转换并选择 XML > 开始 XSLT 调试,VS 会自动打开输出文件,当我逐步完成转换时,我可以观察到正在写入的输出。

然而,在我的例子中,因为转换是由首先设置一些参数的应用程序执行的,所以我改为使用以下代码进入 XSLT 调试器:

XslCompiledTransform xslTransform = new XslCompiledTransform(true); // enableDebug
XmlUrlResolver urlResolver = new XmlUrlResolver();
XsltSettings xsltSettings = new XsltSettings(true, true);
XsltArgumentList transformArgumentList = new XsltArgumentList();
// some arguments are set here
xslTransform.Load(transformFilePath, xsltSettings, urlResolver);             
using (XmlWriter writer = XmlWriter.Create(outputFilePath))
{
    xslTransform.Transform(inputFile, transformArgumentList, writer, urlResolver);
}

在调用 Transform 时设置断点。启动调试器后,它按预期在 Transform 上中断。当我使用 F11 / Debug > Step Into 时,我进入了 XSLT 文件并且可以单步执行它,但是我看不到它的输出。

是否需要设置一个选项才能在写入时查看输出,就像在前一种模式中一样?

【问题讨论】:

    标签: debugging visual-studio-2010 xslt


    【解决方案1】:

    我不确定您是否可以在调试器中检查流。一旦 XSLT 调试开始,您就不再处于 .NET 世界中。我的本地窗口只显示 XSLT 元素。

    如果你想投票,我创建了feature request。

    【讨论】:

      【解决方案2】:

      很遗憾,我不知道。

      我不得不承认我并不经常需要这个,但是您可以用 MemoryStream 支持流替换 writer(在调试时有条件),这至少可以让您通过检查流来查看 xml 输出在调试器中。

      【讨论】:

        【解决方案3】:

        不确定这是否对任何人都有帮助,但这里是 Microsoft 的“如何:开始调试 XSLT”http://msdn.microsoft.com/en-us/library/ms255603%28v=vs.110%29.aspx

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-10-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-11-01
          • 2023-01-03
          • 1970-01-01
          相关资源
          最近更新 更多