Использование Add-StorageTableRow для добавления строки в таблицу Azure - PullRequest
0 голосов
/ 28 августа 2018

Я пишу скрипт powershell для добавления строки в таблицу Azure, которая не запущена. Ниже приведен код и ошибка, которую я получаю.

Код:

  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\1.0.0.23\AzureRmStorageTableCoreHelper.psm1:191 char:11

Я проверил, является ли какая-либо переменная нулевой или не определена, но это не так. Есть идеи, что здесь происходит.

1 Ответ

0 голосов
/ 28 августа 2018

Пожалуйста, используйте табличный объект вместо имени таблицы в вашем скрипте.

Вы можете получить объект таблицы таким образом.

$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}

    }
 }  

Результат теста:

enter image description here

Дополнительные сведения о работе с таблицами хранилища Azure из PowerShell см. В этом блоге .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...