在某些情况下,被自动添加的隐藏字段(在“编辑视图”界面中可以看到,但在“列表设置”中看不到)未能被自动删除,从而遗留在了列表中。对于此情况,可参考如下步骤删除。
1. 查看列表中所有字段的显示名和内部名
$WebUrl = "http://www.consodo.com/market/product/" $ListDisplayName = "Product Manifest" $JPWeb = Get-SPWeb $WebUrl $lists = $JPWeb.lists $list = $lists[$ListDisplayName] $fields=$list.fields $fields | Format-Table -Property Title, StaticName -AutoSize
2. 删除指定的字段
$FieldDisplayName = "FieldToDelete" $field = $fields[$FieldDisplayName] #$field.delete() #can't delete a hidden column $field.Hidden = $false $field.ReadOnlyField = $false $field.Update() $field.delete()
注意:隐藏和只读的字段均不能删除,所以需要先修改其隐藏及只读属性,并更新后再删除。
另外,通过显示名删除字段有一定风险,最保险的方式是用下面语句替换上面的字段对象获取语句:
$FieldInternalName = "FieldInternalName" $field = $list.Fields.GetFieldByInternalName($FieldInternalName)
参考:http://reality-tech.com/2013/01/13/how-to-delete-a-hidden-library-field-in-sharepoint/
浙公网安备 33010602011771号