Pregunta

Estoy tirando un archivo CVS en un datos. Puedo recorrer cada fila y cada columna. Solo ejecuto algunas lógicas para 4 columnas de 16 columnas. Lo intenté si pero no funciona. ¿Cómo uso la sintaxis "para"? Por ejemplo, me gusta decir que Columna haga esto. Para columnab hacer esto. (en lugar de if (column.columnname == "columna") Entonces haz algo)

¿Fue útil?

Solución

Creo que estás atrapado con probar el nombre de la columna en algún valor de cadena. Incluso si alguien se le ocurre una expresión lambda, todo es esencialmente lo mismo: comparaciones de bucle y cadena.

foreach(DataRow row in table.Rows)
{
    foreach(DataColumn col in table.Columns)
    {
        switch (col.Name)
        {
            case "ColumnA":
                  // do something
                  // if(row[col.Name] = ??) { ... }
                  break;
            case "ColumnB":
                  // do something else
                  break;
        }
    }
}

Otros consejos

Si ya conoce el nombre de las columnas, siempre puede consultarlo mediante la siguiente sintaxis:

tableObject.Columns[columnName]

y para una fila en particular:

tableObject.Rows[rowIndex][columnName]
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top