web-dev-qa-db-fra.com

ADO.NET DataRow - vérifier l'existence d'une colonne

Comment vérifier l'existence d'une colonne dans une ligne de données?

Je crée des tables de données pour organiser certaines données que j'ai déjà retirées de la base de données. Selon le type de données dans chaque ligne, je dois créer une table de données avec différentes colonnes. Ensuite, plus tard, je veux vérifier et voir si la table de données que je regarde a une certaine colonne.

Je sais que je peux attraper l'exception et la gérer de cette façon, mais je suis curieux de savoir s'il existe une propriété ou une méthode sur l'objet datarow qui le fera pour moi?

Voici comment je peux le faire en interceptant l'exception:

public static String CheckEmptyDataRowItem(DataRow row, String rowName, String nullValue)
{
    try
    {
        return row[rowName].ToString();
    }
    catch (System.ArgumentException)
    {
        return nullValue;
    }
}
108
Tone

Vous pouvez simplement vérifier comme ceci:

return row.Table.Columns.Contains(columnName);
211
Gaurav

Les DataTables ont ces informations de schéma, alors vérifiez si la collection Columns du Row's Table contient le champ.

6
Wyatt Barnett