function ConvertTo-Hashtable { [CmdletBinding()] param ( [Parameter( Mandatory=$true, ValueFromPipeline=$true, ValueFromPipelineByPropertyName=$true, Position=0 )] [ValidateNotNullOrEmpty()] [PSCustomObject]$InputObject ) process { $_hashtable = @{} $InputObject | Get-Member -MemberType *Property | Where-Object { $_hashtable.($_.name) = $CustomFields.($_.name) } Write-Output $_hashtable } }