我正在 powershell 2.0 中编写我的第一个自定义 CMDLet。我遇到了一个问题,即我的 cmdlet 中没有使用自定义格式模板 xml。这是我的格式化文件:
<Configuration>
<ViewDefinitions>
<View>
<Name>abc</Name>
<ViewSelectedBy>
<TypeName>ExtractServicesCmd.ServiceInfo</TypeName>
</ViewSelectedBy>
<TableControl>
<TableHeaders>
<TableColumnHeader>
<Label>ServiceName</Label>
<Width>12</Width>
<Alignment>right</Alignment>
</TableColumnHeader>
</TableHeaders>
<TableRowEntries>
<TableRowEntry>
<TableColumnItems>
<TableColumnItem>
<PropertyName>ServiceName</PropertyName>
</TableColumnItem>
</TableColumnItems>
</TableRowEntry>
</TableRowEntries>
</TableControl>
</View>
</ViewDefinitions>
</Configuration>
一切正常,格式已成功注册(我使用Get-FormatData命令检查过),类型正确。但是在执行我的命令行开关时,它仍然使用默认格式。我什至试图通过管道“| Format-Table -View abc”来强制使用我的格式化程序,但它说 - 找不到名为 abc 的视图!到底是怎么回事?我尝试了 Get-FormatData并分析了条目 - 我的 ViewDefinition 以正确的视图名称出现在那里!
谢谢阅读。