Vérifier si DataRow existe par nom de colonne dans c#? [dupliquer]
cette question a déjà une réponse ici:
je veux faire quelque chose comme ça:
   private User PopulateUsersList(DataRow row)
        {
            Users user = new Users();
            user.Id = int.Parse(row["US_ID"].ToString());
            if (row["US_OTHERFRIEND"] != null)
            {
                user.OtherFriend = row["US_OTHERFRIEND"].ToString();
            }
            return user;
        }
  
   cependant, je reçois une erreur disant US_OTHERFRIEND  n'appartient pas à la table.
Je veux il suffit de vérifier si elle n'est pas nulle, puis de définir la valeur.  
N'y a-t-il pas un moyen de faire ça?
91
                
            
                demandé sur
                Irshad
                2010-04-02 00:39:54
            
        5 réponses
, Vous devriez essayer
if (row.Table.Columns.Contains("US_OTHERFRIEND"))
  
  Je ne crois pas que row ait une propriété colonnes elle-même.
249
	                    
	                
	                    répondu
	                    Kibbee
	                    2012-09-25 09:44:50
	                
	            if (drMyRow.Table.Columns["ColNameToCheck"] != null)
{
   doSomethingUseful;
{
else { return; }
  
  bien que le DataRow n'ait pas de propriété de colonnes, il a une Table que la colonne peut être vérifiée pour.
14
	                    
	                
	                    répondu
	                    JeffPGMT
	                    2012-02-10 05:28:17
	                
	            vous pouvez utiliser la collecte de données de votre datatable pour vérifier si la colonne est dans la collecte.
quelque chose comme:
DataColumnCollection Columns = dtItems.Columns;
if (Columns.Contains(ColNameToCheck))
{
  row["ColNameToCheck"] = "Checked";
}
  
    	                6
	                    
	                
	                    répondu
	                    Allan Wolff
	                    2013-07-03 07:44:02
	                
	            vous pouvez utiliser
try {
   user.OtherFriend = row["US_OTHERFRIEND"].ToString();
}
catch (Exception ex)
{
   // do something if you want 
}
  
    	                -3
	                    
	                
	                    répondu
	                    Shuo
	                    2010-04-01 20:42:43