如何使用Azure Powershell模块向Azure表存储行添加属性

时间:2019-07-11 03:02:58

标签: powershell azure-table-storage azure-powershell

我需要通过Azure PowerShell module更新记录时向Azure表存储实体添加新属性。我希望通过更新而不是删除/添加新实体来实现这一目标。

我当前拥有的脚本紧跟Microsoft updating entities example,非常适合更新现有属性。下面是他们的示例的修改版本,其中我尝试添加新的“昵称”属性。

$user = Get-AzTableRow -table $cloudTable -customFilter $filter

# Change the entity.
$user.username = "Jessie2"

# Attempting to add a new property 
$user.nickname= "Jess"

# To commit the change, pipe the updated record into the update cmdlet.
$user | Update-AzTableRow -table $cloudTable

您可能会期望PowerShell抛出错误,因为该行没有现有的昵称属性: Exception setting "nickname": "The property 'nickname' cannot be found on this object. Verify that the property exists and can be set.

删除/创建新实体是添加新属性的唯一方法吗?

1 个答案:

答案 0 :(得分:2)

他在他的博客文章中说,他将行条目转换为PSCustomObjects,因此将其像这样对待并使用Add-Member添加新属性是很有意义的。尝试更改

$user.nickname= "Jess"

Add-Member -InputObject $user -NotePropertyName 'nickname' -NotePropertyValue 'Jess'

或更短的

$user|add-member 'nickname' 'Jess'