Powershell-Variable wird das Ergebnis einer Funktion UND der Parameter zugewiesen, den ich an die Funktion übergeben habe
Ich stoße in meinem Drehbuch immer wieder darauf. Ich habe diese Codezeile:
$Errors = Get-DeploymentErrors $uniqueID
Wenn dies ausgeführt wird, wird $ Errors das Ergebnis von Get-DeploymentErrors und der Wert von $ uniqueID zugewiesen. Ich möchte nur, dass $ Errors das Ergebnis von Get-DeploymentErrors erhält.
Hier ist die Get-DeploymentErrors-Funktion:
Function Get-DeploymentErrors($uniqueID)
{
$Errors = @()
$conn = New-Object -TypeName System.Data.SqlClient.SqlConnection
$conn.ConnectionString = 'removed connection string'
$cmd = New-Object -TypeName System.Data.SqlClient.SqlCommand
$cmd.Connection = $conn
$cmd.CommandText = "removed sql statement"
$cmd.Parameters.AddWithValue("@uniqueID", $uniqueID)
$conn.Open()
$reader = $cmd.ExecuteReader()
if($reader.HasRows)
{
While ($reader.Read())
{
$error = New-Object -TypeName PSObject
$error | Add-Member -MemberType NoteProperty -Name StepID -Value $reader["StepID"]
$error | Add-Member -MemberType NoteProperty -Name DeploymentID -Value $reader["DeploymentID"]
$error | Add-Member -MemberType NoteProperty -Name MessageID -Value $reader["MessageID"]
$error | Add-Member -MemberType NoteProperty -Name Severity -Value $reader["Severity"]
$error | Add-Member -MemberType NoteProperty -Name Message -Value $reader["Message"]
$error | Add-Member -MemberType NoteProperty -Name StepName -Value $reader["StepName"]
$error | Add-Member -MemberType NoteProperty -Name CurrentStep -Value $reader["CurrentStep"]
$error | Add-Member -MemberType NoteProperty -Name TotalSteps -Value $reader["TotalSteps"]
$error | Add-Member -MemberType NoteProperty -Name CurrentTime -Value $reader["CurrentTime"]
$Errors += $error
}
}
return $Errors
}