判断DataReader中是否有指定列

取出的DataReader如果在读取过程中报没有列的错误可以用这个方法。

 1 //调用该方法判断datareader中是否有指定列
 2 public static bool readerExists(IDataReader dr, string columnName)
 3         {
 4             dr.GetSchemaTable().DefaultView.RowFilter = "ColumnName= '" + columnName + "'";
 5             return (dr.GetSchemaTable().DefaultView.Count > 0);
 6         }
 7 
 8  public static CBill PopulateBill(IDataReader dr, EObjectPopulateType type)
 9         {
10           if(readerExists(dr,"IntegralConsumer")){
11                 if (dr["IntegralConsumer"] != DBNull.Value)
12                 {
13                 string IntegralConsumer = Convert.ToInt32(dr["IntegralConsumer"]);
14                 }
15             }
16         }    
原文地址:https://www.cnblogs.com/zhaokunbokeyuan256/p/5969510.html