在VS2015中调试Powershell无法可视化XML对象

时间:2016-05-24 14:51:49

标签: visual-studio powershell debugging visual-studio-2015

我正在尝试在vs2015中编写/调试powershell脚本,安装了PowerShellTools.14.0.vsix插件。 (注意,这发生在运行Windows Server 2008 R2,PowerShell版本3.0的VM中)

一切正常,除了我无法调试XML资源。我无法看到XML对象。监视窗口中的变量不包含相关数据(除非您调用XMLElement层次结构相关)。转换为其他类型,如JSON似乎也没有提供任何帮助。

以下是一些示例代码......

$r = Invoke-SafeWebRequest -Uri $url 
[xml]$xml = $r

Invoke-SafeWebRequestInvoke-WebRequest的简单包装器,用于处理来自REST-ish Web服务的非200-ok状态返回。它总是返回一个简单的字符串

以下是观察窗口的样子。如您所见,除了结构之外,没有数据。 Watch Window

我希望在该观察窗口中看到的是XML数据的某种可视化。

我还尝试了一些将XML数据加载到XML对象中的替代方法,除了这个之外我没有看到任何不同的行为:

$y = New-Object -TypeName System.Xml.XmlDocument
$y.LoadXml($r)

在观察窗口中看起来像这样...... another watch window

我有点困惑的是,我创建的New-Object似乎没有我要求的类型。但至少这个对象会让我看到内部文本等等。但是,当我尝试检查子节点时,我再次得到相同的行为(与第一个屏幕截图一样),我无法看到实际返回的数据。

我是否以某种方式错误地将数据加载到XML中?我不应该能够轻松地将这些数据可视化吗?还有其他我想念的东西吗?

1 个答案:

答案 0 :(得分:0)

尽管我可以说,这似乎是Powershell Tools的一个错误。

Adam Driscoll说"我们并没有正确地扩展XmlElement节点。" 并且在2015年9月17日记录了一个错误...它在本帖时开放。

https://github.com/adamdriscoll/poshtools/issues/337