Sitecore Powershell:具有相同名称的多个字段的项目

时间:2016-08-26 12:27:34

标签: powershell sitecore

我正在尝试检索"语言"字段使用以下语法:

Get-Item master: -Query "<my query>" |
    Show-ListView -property `
    "First Name",
    @{Label="Languages"; Expression={$_.Languages}}

完全正确地返回Sitecore字段&#34;语言&#34;录制项目的语言。 然而,我关心的字段是一个Multilist,也称为Languages,列在特定的Template Section(名为&#34; Background&#34;)下。

问题

当另一个字段具有相同名称时,有没有办法检索项目字段?

3 个答案:

答案 0 :(得分:4)

SPE驱动程序提供程序将尝试使用下划线添加字段名称来解决此问题。它将根据需要多次执行以实现每个字段的唯一性。在您的情况下,要转到Languages字段,您需要将字段设置为_Languages,以便以下内容产生您期望的结果

Get-Item master: -Query "<my query>" |
    Show-ListView -property `
    "First Name",
    @{Label="Languages"; Expression={$_._Languages}}

答案 1 :(得分:2)

我也不确定,但似乎你不能使用相同的字段名称。

我试过一个小小的测试,以确保它是真的:

Get-Process | select name,cpu,@{n='cpu';e={'lala'}}

我收到的错误消息:

select : The property cannot be processed because the property "cpu" already 
exists.

答案 2 :(得分:2)

试试这个:
    Get-Item master: -Query "<my query>" | Show-ListView -property "First Name", @{Label="Languages"; Expression={$_.Fields["<ID of the field you really want>"].Value}}