Extraiga datos de System.Data.DataRow en PowerShell
Tengo un script de PowerShell que ejecuta un comando SQL y devuelve una lista de números de identificación.
Cuando repito la lista, esto es lo que devuelve.
System.Data.DataRow
System.Data.DataRow
System.Data.DataRow
System.Data.DataRow
System.Data.DataRow
System.Data.DataRow
Intenté agregar Out-String
a mi lista,
$q_result = $db.ExecuteWithResults($int_cmd2)
$table = $q_result.Tables[0] | Out-String
foreach ($user_info in $table)
{
write-host $user_info
}
pero eso devuelve una lista de números mal formateada, todo está tabulado en el extremo derecho:
GroupID
-------------
381
382
383
384
385
386
Intenté usar, $user_info.Item[0]
en el bucle, pero no devuelve nada.
¿Cómo puedo extraer solo los números de la lista?
Aceptado
También puedes usar ItemArray . Imprime la fila completa, mientras que Item(index) imprime los valores de la celda indexada.
Item
es una propiedad parametrizada , no una lista en la que pueda indexar:
foreach($row in $table)
{
$row.Item("GroupID")
}
o (asumiendo que "GroupID" es la primera columna):
foreach($row in $table)
{
$row.Item(0)
}