我有一个 PSObject 项目列表,这些项目在使用包时调用该.Invoke()
方法时返回。在调试时,我可以在和属性System.Management.Automation
中看到要打印的对象的值。但是,在使用循环遍历结果并打印每个项目的时候,只会打印项目的类型 ( )。如何将 BaseObjects 的值存储到变量中?BaseObject
ImmediateBaseObject
foreach
BaseObjects
System.Collections.ArrayList
这是代码和一些屏幕截图:
using (var ps = PowerShell.Create())
{
var results = ps.AddScript(File.ReadAllText(@".\PSScripts\test_func2.ps1")).Invoke();
foreach (PSObject result in results)
{
if (result != null)
{
outList.Add(result.BaseObject.ToString())
}
}
}
这是results
调试期间的对象,它只有相关数据的数组。由于隐私原因隐藏。
这是result
调试期间的对象 > BaseObject 视图。对象的result
members 属性没有相关数据。
这是我在执行上述代码时得到的输出:
提前致谢。