В PowerShell вы можете рассматривать пустые / пустые строки как логическое значение.
$x = $null
if ($x) { 'this wont print' }
$x = ""
if ($x) { 'this wont print' }
$x = "blah"
if ($x) { 'this will' }
Итак ... сказав, что вы можете сделать:
$Parameter.Value = $(if ($x) { $x } else { [DBNull]::Value })
Но я бы предпочел обернуть это в такую функцию, как:
function CatchNull([String]$x) {
if ($x) { $x } else { [DBNull]::Value }
}