使用 Add-StorageTableRow 在 azure table 中添加一行

Using Add-StorageTableRow to add a row in azure table

我正在编写一个 powershell 脚本以在 azure table 中添加一行,这不是 运行。下面是代码和我遇到的错误。

代码:

  function add-table-entity()
 {
$entity = '[{"AD_Domain":"xyz.onmicrosoft.com","osVersion":"Windows 7","status":"OK"}]'

foreach ($ent in ($entity | ConvertFrom-Json) )
 {

    Add-StorageTableRow -table $tableName -partitionKey $partitionKey -rowKey "$rowkey" -property @{"AD_Domain"=$ent.AD_Domain}

 }

}

错误:

 You cannot call a method on a null-valued expression.
At C:\Program Files\WindowsPowerShell\Modules\AzureRmStorageTable.0.0.23\AzureRmStorageTableCoreHelper.psm1:191 char:11

我检查了是否有任何变量为空或未定义,但事实并非如此。知道这里发生了什么。

请在脚本中使用 table 对象代替 table 名称。

您可以通过这种方式获得 table 对象。

$storageTable = Get-AzureStorageTable –Name $tableName –Context $ctx 

请尝试使用以下代码进行测试。

function add-table-entity()
{
$entity = '[{"AD_Domain":"xyz.onmicrosoft.com","osVersion":"Windows 7","status":"OK"}]'

    foreach ($ent in ($entity | ConvertFrom-Json) )
    {

        Add-StorageTableRow -table $storageTable -partitionKey $partitionKey -rowKey "$rowkey" -property @{"AD_Domain"=$ent.AD_Domain}

    }
 }  

测试结果:

有关如何从 PowerShell 使用 Azure 存储表的更多信息,请参阅此 blog