PowerShell 3.0为我们提供了PSCustomObject作为一种允许正确表格格式的类型,如下所示:
> [PSCustomObject]@{ Day = "Monday"; Task = "Wash car" }
Day Task
--- ----
Monday Wash car
但是,如果我通过一个变量,它将恢复为愚蠢模式。
> [PSCustomObject]$row = @{ Day = "Monday"; Task = "Wash car" }
> $row
Name Value
--- ----
Task Wash car
Day Monday
为什么呢? (感谢)
答案 0 :(得分:1)
几乎立即解决了。
[PSCustomObject]$row = [PSCustomObject]@{ Day = "Monday"; Task = "Wash car" }
实际上,我正在创建一个哈希表并将其转换为PSCustomObject。仍然不完全确定为什么散列表键不会转换为.NET 4.0 DLR ExpandoObject等属性。
在C#中编写CmdLets要好得多。